Bonjour,
J'essaie de faire une procedure stockée qui prend une valeur d'une colonne passée en paramètre, puis qui la réinsère dans une autre table.
En réponse j'ai la valeur passée en argument pour @type_serial qui s'affiche (print) j'ai laissé l'insert de coté en attendant.
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 CREATE PROCEDURE arch_broken @matid int, @typeid int, @placeid int, @position int, @type_serial varchar(15) AS BEGIN TRANSACTION DECLARE @old_serial varchar(15) SET @old_serial = (select @type_serial from workstation where placeid=@placeid and position=@position); Print @old_serial Insert into operation(..........) VALUES(...,..,...,@old_serial); IF @@ERROR <>0 BEGIN ROLLBACK TRANSACTION RETURN END ELSE BEGIN COMMIT END
Bon le souci c'est que pour que cela marche, il faut que je remplace dans la requete SELECT le @type_serial par le nom de la colonne réel.
Mais ce n'est pas ce que je veux car cette procédure sera utilisée pour plusieurs colonnes.
Comme je ne connais pas parfaitement transact SQL, est ce que quelqu'un connait un méthode ou une syntaxe pour que le teste passe?
Partager