Freigeben über


Löschen einer gespeicherten Prozedur

Dieses Thema beschreibt, wie mit SQL Server Management Studio oder Transact-SQL eine gespeicherte Prozedur in SQL Server 2012 gelöscht werden kann.

  • Vorbereitungen:  Einschränkungen, Sicherheit

  • So löschen Sie eine Prozedur mit  SQL Server Management Studio, Transact-SQL

Vorbereitungen

Einschränkungen

Das Löschen einer Prozedur kann dazu führen, dass abhängige Objekte und Skripts fehlerhaft sind, wenn diese Objekte und Skripts nicht so aktualisiert werden, dass sie Löschung der Prozedur widerspiegeln. Wird jedoch eine neue Prozedur mit demselben Namen und denselben Parametern erstellt, um die gelöschte Prozedur zu ersetzen, können andere Objekte, die darauf verweisen, weiterhin erfolgreich verarbeitet werden. Weitere Informationen finden Sie unter Anzeigen der Abhängigkeiten einer gespeicherten Prozedur.

Sicherheit

Berechtigungen

Erfordert die ALTER-Berechtigung im Schema, zu der die Prozedur gehört, oder die CONTROL-Berechtigung für die Prozedur.

Vorgehensweise: Löschen einer gespeicherten Prozedur

Sie können eine der folgenden Anwendungen verwenden:

  • SQL Server Management Studio

  • Transact-SQL

Mit SQL Server Management Studio

So löschen Sie eine Prozedur im Objekt-Explorer

  1. Stellen Sie im Objekt-Explorer eine Verbindung mit einer Instanz von Database Engine (Datenbankmodul) her, und erweitern Sie dann diese Instanz.

  2. Erweitern Sie Datenbanken, erweitern Sie die Datenbank, zu der die Prozedur gehört, und erweitern Sie dann Programmierbarkeit.

  3. Erweitern Sie Gespeicherte Prozeduren, klicken Sie mit der rechten Maustaste auf die zu entfernende Prozedur, und klicken Sie dann auf Löschen.

  4. Klicken Sie auf Abhängigkeiten anzeigen, um die von der Prozedur abhängigen Objekte anzuzeigen.

  5. Bestätigen Sie, dass die richtige Prozedur ausgewählt wurde, und klicken Sie dann auf OK.

  6. Entfernen Sie in allen abhängigen Objekten und Skripts die Verweise auf die Prozedur.

[Nach oben]

Mit Transact-SQL

So löschen Sie eine Prozedur im Abfrage-Editor

  1. Stellen Sie im Objekt-Explorer eine Verbindung mit einer Instanz von Database Engine (Datenbankmodul) her, und erweitern Sie dann diese Instanz.

  2. Erweitern Sie Datenbanken, erweitern Sie die Datenbank, in die die Prozedur gehört, oder wählen Sie in der Symbolleiste die Datenbank aus der Liste der verfügbaren Datenbanken aus.

  3. Klicken Sie im Menü Datei auf Neue Abfrage.

  4. Rufen Sie den Namen der gespeicherten Prozedur ab, der aus der aktuellen Datenbank entfernt werden soll. Erweitern Sie im Objekt-Explorer Programmierbarkeit, und erweitern Sie dann Gespeicherte Prozeduren. Führen Sie stattdessen im Abfrage-Editor die folgende Anweisung aus.

    SELECT name AS procedure_name 
        ,SCHEMA_NAME(schema_id) AS schema_name
        ,type_desc
        ,create_date
        ,modify_date
    FROM sys.procedures;
    
  5. Kopieren und fügen Sie das folgende Beispiel in den Abfrage-Editor ein, und fügen Sie einen Namen der gespeicherten Prozedur ein, der aus der aktuellen Datenbank gelöscht werden soll.

    DROP PROCEDURE <stored procedure name>;
    GO
    
  6. Entfernen Sie in allen abhängigen Objekten und Skripts die Verweise auf die Prozedur.

[Nach oben]

Siehe auch

Verweis

DROP PROCEDURE (Transact-SQL)

Konzepte

Erstellen einer gespeicherten Prozedur

Ändern einer gespeicherten Prozedur

Umbenennen einer gespeicherten Prozedur

Anzeigen der Definition einer gespeicherten Prozedur

Anzeigen der Abhängigkeiten einer gespeicherten Prozedur