|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : mars 2006 Messages : 12 ![]() |
Bonjour,
Je suis en train d'écrire un PL/SQL dans lequel je me rend compte que je pourrais mutualiser une bonne partie dans une fonction. Je sais bien évidemment qu'il est possible de stocker cette fonction au niveau de la base en rajoutant un CREATE or REPLACE devant le nom de la fonction. Par contre, je n'ai pas particulièrement besoin que cette fonction soit stocké au niveau de la base (pas de pb de perf, pas de mutualisation,...), et j'ai vu que les CREATE et REPLACE ne sont pas obligatoires. Du coup, je me dis qu'il devrait être ainsi possible d'avoir une fonction dont la visibilité se limite au PL/SQL. Et là, pas moyen de voir quel serait la structure de mon code. Pour l'instant, j'ai un truc du genre (qui marche pas): declare hv_mavariable number; .... begin mafonction (pouet IN number) return number is ... begin .... end; -- appels de la fonction mafonction(hv_mavariable); mafonction(hv_mavariable2); mafonction(....); end; |
|
|
00
|
|
|
#2 |
|
Membre éprouvé
![]() Étudiant Inscription : novembre 2004 Messages : 739 ![]() |
Et c'est quoi le probleme?
__________________
"Celui qui reconnaît consciemment ses limites est le plus proche de la perfection." Johann Wolfgang |
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : mars 2006 Messages : 12 ![]() |
le problème, c'est que j'arrive pas à appeler une fonction qui se trouve en local dans mon code, et que je n'arrive à trouver aucune info sur le net (systématiquement, c'est que des fonctions stockés au niveau de la base)
|
|
|
00
|
|
|
#4 | ||
|
Expert Confirmé Sénior
![]() ![]() Marius NituIngénieur développement logiciels Inscription : octobre 2007 Messages : 3 320 ![]() |
Voilà un exemple
Code :
|
||
|
|
00
|
|
|
#5 |
|
Membre confirmé
![]() |
Effectivement, la fonction se declare dans la partie déclative du bloc qui l'utilisera.
__________________
|
|
00
|
Copyright © 2000-2012 - www.developpez.com