Curseur et procédure stockée récursive [T-SQL] - SQL/NoSQL - Programmation
Marsh Posté le 12-01-2005 à 17:28:24
Argh !!!
Code :
|
Citation : |
Code :
|
Et ça marche
Pfffff... Ca m'énerve, elle est trop bien foutue cette doc de SQL Server : même les trucs à la con, si on prend le temps de tout lire on trouve une réponse au problème...
Marsh Posté le 12-01-2005 à 17:00:23
Salut,
J'ai un léger problème avec SQL Server 2000
J'ai fait une procédure stockée, qui est récursive (elle s'appelle elle-même) et elle contient un curseur.
En fait, c'est dans la boucle du curseur qu'elle s'appelle elle-même, et il semble que le problème vienne de là.
En effet, lorsque je l'éxécute, voici les erreurs que j'obtiens :
Voici le code de ma procédure :
Contenu de la base au moment de l'erreur (les fils de l'article 1 sont au status "D", et lui-même aussi. :
Commande exécutée :
Les autres étapes se sont bien déroulées :
Mais c'est la dernière étape qui foire, c'est à dire le seul moment où je rentre dans mon curseur et que je tente l'appelle récursif...
D'après les conventions de nommage de SQL Server, mettre un "@" permet d'expliciter que j'utilise une variable locale. J'ai donc tenté d'en mettre un au nom de mon curseur, mais à ce moment j'obtiens une erreur à la compilation sur le "FOR" du "declare cursor @fils for select ..." donc j'en déduit que cette règle de nommage ne s'applique pas aux curseurs.