Compartilhar via


DROP PROCEDURE (Transact-SQL)

Aplica-se a:SQL ServerBanco de Dados SQL do AzureInstância Gerenciada de SQL do AzureAzure Synapse AnalyticsPDW (Analytics Platform System)Ponto de extremidade de SQL no Microsoft FabricWarehouse 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 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 }

Observação

Para exibir a sintaxe do Transact-SQL para o SQL Server 2014 (12.x) e versões anteriores, confira a Documentação das versões anteriores.

Argumentos

IF EXISTS

Aplica-se a: SQL Server 2016 (13.x) e versões posteriores, Instância Gerenciada 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. Soltar 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 sys.objects exibição de catálogo. Para exibir a definição do procedimento, consulte a exibição de 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 função de servidor fixa db_ddladmin .

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 causa 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