Bonjour,
J'ai créé une fonction acceptant en paramètre le nom d'une table et dans la quelle j'ai un cursor avec lequel je souhaite utiliser ce paramètre mais j'ai une erreur de compilation; voici le code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
CREATE OR REPLACE 
  FUNCTION GroupConcat(concatTable IN VARCHAR2)
  RETURN varchar2 
IS 
  varRetour VARCHAR2(2000) default '';
  CURSOR cConcat IS SELECT id  FROM concatTable;
BEGIN	
  FOR x IN cConcat LOOP
	varRetour := varRetour || to_char(x.id) || ',' ;
	END LOOP; 
	RETURN varRetour;
END;
/
Si je supprime ma variable concatTable de ma requete SELECT et que j'écris un nom de table en dur ça fonctionne, mais moi je veux justement la paramétrer ! Auriez-vous une idée ? Je précise que je ne suis pas expert en PL/SQL.