Bonjour à tous !

Je viens d'entrer dans la 4eme dimension je crois '-_-

J'ai dans mon code SQL le curseur suivant :
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
 
DECLARE CurRes CURSOR
  FOR
SELECT DISTINCT nrid, titulaire FROM sysadm.am0 WHERE var5='Administrator' and bactive=1 and template is null
 
OPEN CurRes
FETCH CurRes INTO @am0_nrid, @am0_titulaire
WHILE @@Fetch_Status = 0
BEGIN
print @am0_nrid
print @am0_titulaire
	SELECT @jan_todo_b = tot_jan_todo FROM sysadm.x_visit_target WHERE am0_nrid=@am0_nrid and template is null
print @jan_todo_b
	FETCH NEXT FROM CurRes INTO @am0_nrid, @am0_titulaire
END
CLOSE CurRes;
DEALLOCATE CurRes;
Le probleme est le suivant :
Les résultats affichés sont les suivant :
1
User1
25

2
User2
25

25 est donc le résultat de ma requete dans le curseur en prenant @am0_nrid=2

Sauf que pas du tout...quand j'execute manuellement cette requete en remplacant @am0_nrid par 2, cela ne renvoie rien (ce qui est le résultat correct).
On dirait que dans le curseur, la requete est executée avec l'ancienne valeur de @am0_nrid, pourtant le print en début de curseur m'indique bien que cette valeur a été modifiée...

Donc je ne comprends vraiment pas...
J'ai peut etre oublié un truc tout con, mais la je seche.

Quelqu'un verrait où est le probleme ?

EDIT : Bon, jvais encore passer pour un *** mais....Auto-Resolu :p Comme la requete ne renvoie rien la 2eme fois, la variable @jan_todo_b n'est simplement pas écrasée '-_-
Donc en réinitialisant, ca passe...