bonjour,
je suis une stagiaire qui travail sur BO,Comme BO ne gère pas le multi_base mon responsable ma demander de créer une fonction qui a le même nom sur les 3SGBD ORACLE,SQLBASE,SQLSERVER
en fait le but c'est d'utiliser la même fonction sur BO (INLSUBSTR) qui est défini différemment sur les 3 SGBD.
comme exemple la fonction substr sous oracle @substring sous SQLBAS, et substring sous SQLSERVER normalement.
@substring(string,star_pos,length) (SQLBASE)
substr(string,star_pos,length) (ORACLE)
substring(string,star_pos,length ) (SQL SERVER)
les trois fonctions retourn la meme chose
pour définir cette fonction sous oracle
voila mon code
CREATE OR REPLACE FUNCTION INLSUBSTR(string_in IN VARCHAR2,start_position_in IN NUMBER,substr_length_in IN NUMBER)
RETURN VARCHAR2
AS
BEGIN
SUBSTR('string_in',start_position_in ,substr_length_in )
END;
pour la création de la fonction il y a pas de pb mais quand j'essaye de faire
select INLSUBSTR('SP_LIB',1,2) from MEDICAMENTS;
j'ai un message que la fonction et n'est pas valide
conclusion en fait mon but c'est comme si je vais renommer la fonction substr sous oracle et faire pareil sous les autres SGBD
REMARQUE : je suis débutant dans le domaine
Merci pour votre aide

