Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Comment détecter si une procédure stockée existe déjà

Si vous DROP et CREATE la procédure, vous perdrez les paramètres de sécurité. Cela pourrait gêner votre administrateur de bases de données ou casser complètement votre application.

Ce que je fais, c'est créer une procédure stockée triviale si elle n'existe pas encore. Après cela, vous pouvez MODIFIER la procédure stockée à votre guise.

IF object_id('YourSp') IS NULL
    EXEC ('create procedure dbo.YourSp as select 1')
GO
ALTER PROCEDURE dbo.YourSp
AS
...

De cette façon, les paramètres de sécurité, les commentaires et autres métadonnées survivront au déploiement.