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 : Sélectionner tout - Visualiser dans une fenêtre à part
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