OVH Cloud OVH Cloud

Probleme de procedure stockee

1 réponse
Avatar
Ralf Meuser
Bonjours

J'essai de cree une procedure stockee:

CREATE PROCEDURE TEST
@nom varchar(35)
AS
DELETE from TABLE1 where NOM=@nom
go
INSERT INTO TABLE1 (NOM,ADR1,ADR1,CP,VILLE)
SELECT NOM,ADR1,ADR1,CP,VILLE FROM TABLE2 WHERE NOM=@nom
go


J'ai l'erreur 137. Peut-ont pas utiliser la variable deux fois ?


Merci d'avance pour votre aide.


salutations
Ralf

1 réponse

Avatar
Rudi Bruchez
Ralf Meuser a écrit:

CREATE PROCEDURE TEST
@nom varchar(35)
AS
DELETE from TABLE1 where NOM=@nom
go
INSERT INTO TABLE1 (NOM,ADR1,ADR1,CP,VILLE)
SELECT NOM,ADR1,ADR1,CP,VILLE FROM TABLE2 WHERE NOM=@nom
go



Bonjour,

GO n'est pas une instruction SQL, c'est un délimiteur du client (Query
Analyzer), pour séparer les batches envoyés au serveur.

Moralité, jetez un oeil sur la procédure créée : elle ne fait que le
DELETE, puisque le CREATE s'arrête au GO.

Ensuite, votre variable n'existe plus, elle est dans un sp déjà créée, et
en plus dans un autre batch.

Bref, enlevez le GO après le DELETE


--
Rudi Bruchez, MCDBA
http://www.babaluga.com/