Problème avec un Curseur...
Salut à tous,
Je n'arrive pas à effectuer l'insertion dans une table grâce à un curseur.
Pourriez me dire ce qu'il ne va pas dans mon code, j'ai l'erreur suivante
La variable '@IDEtab' doit être déclarée.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
|
-- déclaration des variables de colonnes pour le curseur
DECLARE @IDEtab int,
@ColVersion VARCHAR(10),
@SQL VARCHAR(1000)
-- declaration du curseur
DECLARE MyCursor CURSOR
FOR
SELECT ID, Version
FROM Etablissement, Version
-- ouverture du curseur
OPEN MyCursor
-- lecture du premier enregistrement
FETCH MyCursor INTO @IDEtab, @ColVersion
-- boucle de traitement
WHILE @@fetch_Status = 0
BEGIN
-- lecture de l'enregistrement suivant
SET @SQL = 'INSERT INTO SPECIFETAB (IDEtab,IDCodeSpecif) VALUES(@IDEtab,'''+@ColVersion+''')'
EXEC(@SQL)
FETCH MyCursor INTO @IDEtab, @ColVersion
END
-- fermeture du curseur
CLOSE MyCursor
-- libération de la mémoire
DEALLOCATE MyCursor |
J'ai testé l'insertion sans IDEtab la requête fonctionne correctement, mais dès que je rajoute le variable IDEtab cela ne fonctionne pas pourtant cela provient bien du même curseur
Le curseur est censé me renvoyé ce type d'enregistrement
ID - Version
1 - H225
2 - G300
3 - K35K
Auriez vous une solution à me proposer
Help, help