DROP PROCEDURE (Transact-SQL)

S’applique à :yesSQL Server (toutes les versions prises en charge) YesAzure SQL Database YesAzure SQL Managed Instance yesAzure Synapse Analytics yesAnalytics Platform System (PDW)

Supprime une ou plusieurs procédures stockées ou un ou plusieurs groupes de procédures de la base de données active dans SQL Server.

Topic link iconConventions de la syntaxe Transact-SQL

Syntaxe

-- Syntax for SQL Server and Azure SQL Database  
  
DROP { PROC | PROCEDURE } [ IF EXISTS ] { [ schema_name. ] procedure } [ ,...n ]  
-- Syntax for Azure Synapse Analytics and Parallel Data Warehouse  
  
DROP { PROC | PROCEDURE } { [ schema_name. ] procedure_name }  

Notes

Pour afficher la syntaxe Transact-SQL pour SQL Server 2014 et versions antérieures, consultez Versions antérieures de la documentation.

Arguments

IF EXISTS
S’applique à: SQL Server (de SQL Server 2016 (13.x) à la version actuelle).

Supprime, de manière conditionnelle, la procédure uniquement si elle existe déjà.

schema_name
Nom du schéma auquel appartient la procédure. Vous ne pouvez pas spécifier de nom de serveur ou de base de données.

procedure
Nom de la procédure stockée ou du groupe de procédures stockées à supprimer. Vous ne pouvez pas supprimer des procédures individuelles dans un groupe de procédures numérotées ; dans ce cas, tout le groupe de procédures est supprimé.

Bonnes pratiques

Avant de supprimer une procédure stockée, vérifiez les objets dépendants et modifiez-les en conséquence. La suppression d'une procédure stockée peut entraîner l'échec des scripts et des objets dépendants quand ceux-ci n'ont pas été mis à jour. Pour plus d’informations, consultez Afficher les dépendances d’une procédure stockée.

Métadonnées

Pour afficher la liste des procédures existantes, interrogez la vue de catalogue sys.objects. Pour afficher la définition de procédure, interrogez la vue de catalogue sys.sql_modules.

Sécurité

Autorisations

Nécessite l’autorisation CONTROL sur la procédure, ou l’autorisation ALTER sur le schéma auquel appartient la procédure, ou encore l’appartenance au rôle serveur fixe db_ddladmin.

Exemples

L'exemple suivant supprime la procédure stockée dbo.uspMyProc de la base de données active.

DROP PROCEDURE dbo.uspMyProc;  
GO  

L'exemple suivant supprime plusieurs procédures stockées de la base de données active.

DROP PROCEDURE dbo.uspGetSalesbyMonth, dbo.uspUpdateSalesQuotes, dbo.uspGetSalesByYear;  

L’exemple suivant supprime la procédure stockée dbo.uspMyProc si elle existe, mais ne génère pas d’erreur si elle n’existe pas. Cette syntaxe est une nouveauté de SQL Server 2016 (13.x).

DROP PROCEDURE IF EXISTS dbo.uspMyProc;  
GO  

Voir aussi

ALTER PROCEDURE (Transact-SQL)
CREATE PROCEDURE (Transact-SQL)
sys.objects (Transact-SQL)
sys.sql_modules (Transact-SQL)
Supprimer une procédure stockée