Condividi tramite


DROP PROCEDURE (Transact-SQL)

Si applica a:SQL ServerDatabase SQL di AzureIstanza gestita di SQL di AzureAzure Synapse AnalyticsPiattaforma di strumenti analitici (PDW)Endpoint di analisi SQL in Microsoft FabricWarehouse in Microsoft Fabric

Rimuove una o più stored procedure o gruppi di stored procedure dal database corrente in SQL Server.

Convenzioni relative alla sintassi Transact-SQL

Sintassi

Sintassi per SQL Server, Istanza gestita di SQL di Azure e database SQL di Azure:

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

Sintassi per Azure Synapse Analytics, Platform System (PDW) e Microsoft Fabric:

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

Nota

Per visualizzare la sintassi Transact-SQL per SQL Server 2014 (12.x) e versioni precedenti, vedere Documentazione delle versioni precedenti.

Argomenti

IF EXISTS

Si applica a: SQL Server 2016 (13.x) e versioni successive, Istanza gestita di SQL di Azure e database SQL di Azure

Rimuove in modo condizionale la procedura solo se esiste già.

schema_name

Nome dello schema a cui appartiene la procedura. Non è possibile specificare un nome di server o un nome di database.

procedure

Nome della stored procedure o del gruppo di stored procedure da rimuovere. Non è possibile eliminare singole procedure all'interno di un gruppo di procedure numerate; l'intero gruppo di procedure viene eliminato.

Procedure consigliate

Prima di rimuovere qualsiasi stored procedure, verificare la presenza di eventuali oggetti dipendenti e modificare tali oggetti di conseguenza, L'eliminazione di una stored procedure può causare l'esito negativo di oggetti e script dipendenti quando questi oggetti non vengono aggiornati. Per altre informazioni, vedere Visualizzare le dipendenze di una stored procedure

Metadati UFX

Per visualizzare un elenco di routine esistenti, eseguire una query sulla vista del sys.objects catalogo. Per visualizzare la definizione della procedura, eseguire una query sulla vista del sys.sql_modules catalogo.

Autorizzazioni

È necessaria CONTROL l'autorizzazione per la procedura o ALTER l'autorizzazione per lo schema a cui appartiene la routine o l'appartenenza al ruolo predefinito del server db_ddladmin .

Esempi

Nell'esempio seguente si rimuove la stored procedure dbo.uspMyProc nel database corrente.

DROP PROCEDURE dbo.uspMyProc;
GO

Nell'esempio seguente vengono rimosse varie stored procedure dal database corrente.

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

Nell'esempio seguente viene rimossa la dbo.uspMyProc stored procedure, se esistente, ma non viene generato un errore se la routine non esiste. Questa sintassi è stata introdotta in SQL Server 2016 (13.x).

DROP PROCEDURE IF EXISTS dbo.uspMyProc;
GO