Condividi tramite


DROP PROCEDURE (Transact-SQL)

Si applica a: SQL Server Database SQL di Azure Istanza gestita di SQL di Azure Azure Synapse Analytics Piattaforma di strumenti analitici (PDW) Endpoint di analisi SQL in Microsoft Fabric Warehouse 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 }

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