Bonjour,

Je reçois dans une procédure stockée des valeurs définis dans les paramètres suivants

@1 INT,@2 INT,@3 INT,@4 INT,@5 INT,@6 INT,@7 INT,@8 INT,@9 ....
@101 INT,@102 INT,@103 INT,@104 INT,@105 INT,@106 INT,@107 INT,@108 INT,@109.... qui me donnent des valeurs en secondes

ces valeurs doivent être archivées dans une table pour laquelle j'utilise la formule suivante dans une petite boucle WHILE et je fais un update de chaque ligne de 1 à 9 avec la valeur de @Counter
qui s'incrémente à chaque nouvelle ligne.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
UPDATE MaTable
	SET TimeUsed = (SELECT CONVERT(INT, DATEADD(ss, @101, 0),114))
	WHERE LigneNR = @Counter;
Ceci fonctionne parfaitement lorsque j'utilise le nom @10X comme dans l'exemple ci-dessus et je reçois le format hh:mm:ss, mais j'ai la même valeur dans chaque ligne.
Pour pouvoir insérer automatiquement la bonne valeur je devrais remplacer @10X par un paramètre qui prendrait automatiquement la bonne valeur pour chaque ligne, c'est à dire pour ligne 1 @101, pour ligne 2 @102, etc...

J'ai essayé en créant une variable @Incr = '@' + @Counter qui me donne bien la chaîne @102, @102, etc, mais lorsque je remplace le paramètre @101 par exemple par @Incr ça ne fonctionne pas.

Par avance merci de votre aide.

Cordiales salutations