Condividi tramite


Eliminare un stored procedure

Si applica a:SQL ServerDatabase SQL di AzureIstanza gestita di SQL di AzureAzure Synapse AnalyticsAnalytics Platform System (PDW)Database SQL in Microsoft Fabric

Questo articolo illustra come eliminare una stored procedure in SQL Server usando SQL Server Management Studio o Transact-SQL.

Limitazioni e restrizioni

L'eliminazione di una stored procedure può causare errori negli oggetti e script dipendenti quando questi non vengono aggiornati per riflettere la rimozione della stored procedure. Tuttavia, se si crea una nuova stored procedure con lo stesso nome e gli stessi parametri per sostituire quella eliminata, gli altri oggetti che fanno riferimento ancora alla stored procedure verranno elaborati correttamente. Per ulteriori dettagli, vedere Visualizzare le dipendenze di una procedura memorizzata.

Autorizzazioni

È richiesta l'autorizzazione ALTER per lo schema a cui appartiene la procedura oppure l'autorizzazione CONTROL per la procedura.

Usare SQL Server Management Studio

  1. Nell'Esplora oggetti, connettersi a un'istanza del Motore di Database e quindi espanderla.

  2. Espandi Database, espandi il database a cui appartiene la procedura, quindi espandi Programmabilità.

  3. Espandere Stored procedure, fare clic con il pulsante destro del mouse sulla stored procedure da rimuovere e selezionare Elimina.

  4. Per visualizzare gli oggetti che dipendono dalla procedura, selezionare Mostra dipendenze.

  5. Confermare che è stata selezionata la procedura corretta, quindi selezionare OK.

  6. Rimuovere i riferimenti alla procedura da tutti gli oggetti e script dipendenti.

Usare Transact-SQL

  1. In Esplora oggetti, connettersi a un'istanza del Motore di database ed espanderla.

  2. Espandi Database, espandi il database a cui appartiene la stored procedure, oppure, dalla barra degli strumenti, seleziona il database dall'elenco dei database disponibili.

  3. Selezionare Nuova Query dal menu File.

  4. Ottieni il nome della stored procedure da rimuovere nel database corrente. Da Esplora oggetti espandere Programmabilità , quindi espandere Stored procedure. In alternativa, nell'editor di query eseguire l'istruzione riportata di seguito.

    SELECT name AS procedure_name
        , SCHEMA_NAME(schema_id) AS schema_name
        , type_desc
        , create_date
        , modify_date
    FROM sys.procedures;
    
  5. Copiare e incollare l'esempio seguente nell'editor di query e inserire il nome di una stored procedure da eliminare dal database corrente.

    DROP PROCEDURE [<stored procedure name>];
    GO
    
  6. Rimuovere i riferimenti alla procedura da tutti gli oggetti e script dipendenti.

Vedi anche