Passer un paramètre à un curseur. [Oracle] - SQL/NoSQL - Programmation
Marsh Posté le 01-10-2008 à 15:31:03
Utiliser
CURSOR cur_forest (un_parametre CHAR) IS |
Marsh Posté le 01-10-2008 à 17:08:55
olivthill a écrit : Utiliser
|
Merci, c'est tout con mais quand on sait pas la syntaxe on peut tourner longtemps des fois
Marsh Posté le 02-10-2008 à 15:03:58
comment c'est trop pas clair la syntaxe oracle...
en t-sql au moins c'est une variable comme une autre, pas besoin de faire un truc pareil
Marsh Posté le 02-10-2008 à 15:07:14
Oui, mais quand c'est pas toi qui décides si on tourne sur du SQL Server ou du Oracle, ben faut faire avec
Et encore, la syntaxe Oracle c'est une chose, SQLPlus c'en est une autre
Marsh Posté le 02-10-2008 à 15:23:26
ReplyMarsh Posté le 02-10-2008 à 15:29:08
casimimir a écrit : on peut ouvrir le curseur en mettant directement le paramètre dans le where |
Tu veux dire mettre directement la variable dans le curseur au moment de sa déclaration ?
Si c'est ça, non ça ne marche pas, j'avais essayé avant de poster ici.
Marsh Posté le 02-10-2008 à 16:06:59
ha, ben je suis en 9i et ca ca marche
Code :
|
ou alors le le cursor dans le bloc declare avec une des paramètres d'entrée de ma procédure mis dans le where
Marsh Posté le 02-10-2008 à 16:18:50
casimimir a écrit : ha, ben je suis en 9i et ca ca marche
|
Ya pas de curseur dans ton exemple
Même si le principe est en gros le même
EDIT : je suis en 10g
Marsh Posté le 02-10-2008 à 16:27:09
ReplyMarsh Posté le 02-10-2008 à 17:15:16
Les curseurs, c'est le mal incarné
Marsh Posté le 02-10-2008 à 17:53:56
casimimir a écrit : oué 'fin c'est un curseur qu'il y a derrière hein |
oui, mais là c'est quand même moins puissant qu'un curseur : t'es en more forward_only / read_only / static alors qu'avec un vrai curseur t'as un accès direct aux données, avec possibilité de modifications/notifications des changements
Marsh Posté le 03-10-2008 à 09:46:48
bonbonbon, ca c'est bon?
Code :
|
Marsh Posté le 01-10-2008 à 15:03:27
J'ai un curseur comme suit :
Seulement ce curseur se trouve dans une boucle et d'une itération à l'autre la variable valeur peut changer. J'aimerais donc passer cette valeur en paramètre de mon curseur.
Quand je codais en 4GL il me suffisait de faire 'WHERE MonChamps = ?' puis d'utiliser un 'USING UneValeur' lors de l'OPEN (ou du FETCH je me souviens plus trop).
Comment faire de même en PL/SQL Oracle ?
Message édité par Kirvel le 01-10-2008 à 15:03:51
---------------
MyAnimeList