HEllo,
je voudrais savoir s'il est possible d'avoir des paramètres optionnels dans une procédure stockée ou une fonction.
si oui comment les déclarer?
HEllo,
je voudrais savoir s'il est possible d'avoir des paramètres optionnels dans une procédure stockée ou une fonction.
si oui comment les déclarer?
Oui, et dans ce cas ils doivent avoir une valeur par défaut
Procedure X( p1 in Varchar2, p2 in Pls_integer default 10 )
peut être appelée de 2 façons différentes:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 X( 'hello' ) X( 'hello', 20 )
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
je pensais plutot à des paramëtres qu'on est pas obligés de spécifier quand on appelle la procédure..
mais merci de ta réponse... elle peut m'aider...
j'ajouterais juste que cette valeur par défaut peut aussi être NULL ce qui peut permettre de le rendre plus "transparent"...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 create or replace procedure X (p1 in Varchar2, p2 in Pls_integer default Null ) is Begin DBMS_OUTPUT.PUT_LINE ( 'p1 = '|| p1 ); If p2 is not null Then DBMS_OUTPUT.PUT_LINE ( 'p2 = '|| p2 ); End If ; End ;begin
X('jdshfadhf', 50) ;
End ;
Résultat :
p1 = jdshfadhf
p2 = 50begin
X('jdshfadhf') ;
End ;
Résultat :
p1 = jdshfadhf
Il est plus facile de voir les signes avant-coureurs après coup que l'inverse !
Yorglaa
non ce n'est pas nécessaire du tout . il te suffit de faire de l'overload
PL/SQL lets you overload subprogram names and type methods. You can use the same name for several different subprograms as long as their formal parameters differ in number, order, or datatype family.
chapter 8
Oracle® Database PL/SQL User's Guide and Reference
10g Release 2 (10.2)
Jusqu'en 9i, cela n'était possible qu'au sein d'un package...Envoyé par Marc Musette
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
Yorglaa a répondu à ma question... merci beaucoup.
c'est la première fois que je touche oracle.. c'est pas évident... overload sais pas ce que c'est.. je m'interesserais ça quand j'aurais un peu plus de temps...
meric à vous
il est possible aussi des faire :
avec l'appel suivant pour choisir le paramètre passé :
Code : Sélectionner tout - Visualiser dans une fenêtre à part Procedure X( p1 in Varchar2 default Null, p2 in Pls_integer default 10 )
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 X( p1 => 'hello' ) X( p2 => 20 )
Lol, tu réponds à un fil vieux de 15 ans
Current StatusAux persévérants aucune route n'est interdite.
Celui qui ne sait pas se contenter de peu ne sera jamais content de rien.
Faîtes quelque chose de bien avec vos petits sous: Enfants du MekongAvec 40% de pollinisateurs invertébrés menacés d'extinction selon les Nations Unies, l'homme risque fort de passer de la monoculture à la mono diète...
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