Bonjour tout le monde
voilà, j'ai écris une fonction dans laquelle il ya une requête qui retourne une table.
ma question est: que doit être le type de retour de ma fonction
merci d'avance
Bonjour tout le monde
voilà, j'ai écris une fonction dans laquelle il ya une requête qui retourne une table.
ma question est: que doit être le type de retour de ma fonction
merci d'avance
une table PL/SQL ?
Rédacteur Oracle (Oracle ACE)
Guide Oracle ,Guide PL/SQL, Guide Forms 9i/10g, Index de recherche
Je ne réponds pas aux questions techniques par MP
Blogs: Forms-PL/SQL-J2EE - Forms Java Beans
oui, c bien ça,
bon voila le code de ma fonction pr que ça soit plus clair
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 create or replace function ChampsTrigger (NumSequence in champs081.n_sequence%type, NumChamp in champs081.champ%type) return --?-- is TYPE ValeurCollection IS TABLE OF champs081.valeur%type ; varValeur ValeurCollection; begin select champs081.valeur Bulk collect into varValeur from champs081 inner join tab081 on (champs081.n_sequence = tab081.n_sequence) where (champs081.champ = NumChamp) and (champs081.n_sequence = NumSequence); return ( varValeur ); end;
Il faut créer le Type en Base
exemple
Créer ta fonction qui renvoie ce type
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 CREATE OR REPLACE TYPE TYP_REC_STOCK AS OBJECT ( DATE_PREV DATE, QTE NUMBER ) CREATE OR REPLACE TYPE TYP_TAB_STOCK AS TABLE OF TYP_REC_STOCK
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 FUNCTION F_STOCK (p_article IN VARCHAR2) RETURN TYP_TAB_STOCK PIPELINED;Puis faire un
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 FUNCTION F_STOCK (p_article IN VARCHAR2) RETURN TYP_TAB_STOCK PIPELINED IS BEGIN FOR r IN (Select * from Tstock where article = p_article) LOOP PIPE ROW( TYP_REC_STOCK (date_prev => r.date_liv_prev, qte => v_qte)); END LOOP; RETURN ; END;
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 SELECT * FROM TABLE(F_STOCK(monarticle)) WHERE ...
More Code : More Bugs. Less Code : Less Bugs
Mon Blog PL/Sql : Fichier Zip / Image BMP / Lire sqliteDB / QRCode et Images PNG ou BMP
merci beaucoup, je commence à voir clair
mais est ce que vous pouvez m'expliquer un peu votre exemple, la fonction elle fait quoi, et puis le "pipelined"
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager