Supprimer une procédure stockée SQL Server sans erreur

Comment supprimer une procédure stockée SQL Server sans erreur ? Il suffit de tester l’existence de l’objet avant de le supprimer. D’autre part, c’est une bonne pratique de toujours tester l’existence des objets SQL Server, en l’occurrence une procédure stockée avec la commande IF EXISTS.

 

Comment tester l’existence d’une procédure stockée SQL Server avant de la supprimer ?

Ou encore, comment effacer une procédure stockée SQL Server sans générer une erreur ? C’est à dire vérifier si l’objet existe avant de le supprimer avec la commande SQL DROP.

Pour cela, utiliser la fonction T-SQL IF EXISTS, comme ceci par exemple:

IF EXISTS (
  SELECT name 
  FROM sysobjects  
  WHERE name = 'uspGetClient' 
    AND type = 'P'
)
  DROP PROCEDURE uspGetClient
GO

En effet, si la procédure n’existe pas le message d’erreur suivant est affiché:

Msg 3701, Level 11, State 5, Line 1
Cannot drop the procedure ‘uspGetClient’, because it does not exist or you do not have permission.

De plus, voir des exemples de scripts pour gérer une fonction SQL.

Soyez le premier à commenter

Laisser un commentaire