Je dois écrire une routine qui transfère certaines procédures stockées d'une base vers une autre.
La routine reçoit en paramètre le nom de la base cible et le nom de la procédure à transférer.

Je voudrais donc d'abord supprimer la procédure existante
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
	Set @LC_Texte2 = 'DROP PROCEDURE ' + @PC_Procedure
	Execute (@LC_Texte2)
Pour que ce code soit stable je dois tester d'abord si la procédure existe

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
	IF  EXISTS (SELECT * FROM sys.objects Where Name = @PC_Procedure) 
		Set @LC_Texte2 = 'DROP PROCEDURE ' + @PC_Procedure
		Execute (@LC_Texte2)
	Else
Et là le fait d'avoir un Execute en tre le If et le Else fait planter à la compilation

Est-ce que je peux écrire cela autrement ?