DROP PROCEDURE (Transact-SQL)

Aplica-se a: SQL Server Banco de Dados SQL do Azure Instância Gerenciada de SQL do Azure Azure Synapse Analytics PDW (Analytics Platform System) Ponto de extremidade de análise do SQL Warehouse no Microsoft Fabric

Remove um ou mais procedimentos armazenados ou grupos de procedimentos do banco de dados atual no SQL Server.

Convenções de sintaxe de Transact-SQL

Sintaxe

Sintaxe para SQL Server, Instância Gerenciada de SQL do Azure e Banco de Dados SQL do Azure:

DROP { PROC | PROCEDURE } [ IF EXISTS ] { [ schema_name. ] procedure } [ , ...n ]

Sintaxe para Azure Synapse Analytics, PDW (Analytics Platform System) e Microsoft Fabric:

DROP { PROC | PROCEDURE } { [ schema_name. ] procedure_name }

Argumentos

IF EXISTS

Aplica-se a: SQL Server 2016 (13.x) e versões posteriores, Instância Gerenciada de SQL do Azure e Banco de Dados SQL do Azure

Remove condicionalmente o procedimento somente se ele já existe.

schema_name

O nome do esquema ao qual o procedimento pertence. Um nome de servidor ou nome de banco de dados não pode ser especificado.

procedure

O nome do procedimento armazenado ou grupo de procedimentos armazenados a ser removido. Procedimentos individuais dentro de um grupo de procedimentos numerados não podem ser descartados; todo o grupo de procedimentos é descartado.

Práticas recomendadas

Antes de remover qualquer procedimento armazenado, verifique se há objetos dependentes e modifique esses objetos adequadamente. Descartar um procedimento armazenado pode fazer com que objetos e scripts dependentes falhem quando esses objetos não são atualizados. Para obter mais informações, veja Exibir as dependências de um procedimento armazenado

Metadados

Para exibir uma lista de procedimentos existentes, consulte a exibição do sys.objects catálogo. Para exibir a definição do procedimento, consulte a exibição do sys.sql_modules catálogo.

Permissões

Requer CONTROL permissão no procedimento, ou ALTER permissão no esquema ao qual o procedimento pertence, ou associação na db_ddladmin função de servidor fixa.

Exemplos

O exemplo a seguir remove o procedimento armazenado dbo.uspMyProc do banco de dados atual.

DROP PROCEDURE dbo.uspMyProc;
GO

O exemplo a seguir remove vários procedimentos armazenados do banco de dados atual.

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

O exemplo a seguir remove o dbo.uspMyProc procedimento armazenado se ele existir, mas não causará um erro se o procedimento não existir. Essa sintaxe foi introduzida no SQL Server 2016 (13.x).

DROP PROCEDURE IF EXISTS dbo.uspMyProc;
GO