Bonjour,
voilà mon problème (oracle 11g)
je récupère une string que je souhaite utiliser dans ma fonction en tant que commande mais je ne sais pas comment supprimer le fait qu'il encadre ce string par des " ' " et que donc mon select n'interprète pas cette variable comme une commande ...
bref, voici mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
create OR replace function getnextval(nomseq IN varchar2)
return number
IS 
id number;
begin
SELECT nomseq || '.NEXTVAL' into id FROM dual;
return(id);
END getnextval;
pas d'erreur de compil, mais lors de l'appel, j'ai bien sur une erreur type conversion ...

au lieu de me retourner un nombre il me retourne le string tel quel comme le ferai un simple :
select 'nomseq.nextval' from dual; => nomseq.nextval

problème de simple quotes encadrant les string .... et je cale depuis trop longtemsp ...
j'ai déjà essayé avec un def nomseq="ma_sequence" puis &nomseq (ça marche quand je le défini en dehors de ma fonction mais pas à l'intérieur),
des idées ?
merci d'avance