Freigeben über


DROP PROCEDURE (Transact-SQL)

Entfernt eine oder mehrere gespeicherte Prozeduren oder Prozedurgruppen aus der aktuellen Datenbank in SQL Server 2012.

Themenlink (Symbol) Transact-SQL-Syntaxkonventionen

Syntax

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

Argumente

  • schema_name
    Der Name des Schemas, zu dem die Prozedur gehört. Ein Servername oder Datenbankname kann nicht angegeben werden.

  • procedure
    Der Name der gespeicherten Prozedur bzw. der gespeicherten Prozedurgruppe, die entfernt werden soll. Einzelne Prozeduren innerhalb einer nummerierten Prozedurgruppe können nicht gelöscht werden. Es wird die gesamte Prozedurgruppe gelöscht.

Bewährte Methoden

Überprüfen Sie abhängige Objekte, und ändern Sie diese Objekte entsprechend, bevor Sie eine gespeicherte Prozedur löschen. Das Löschen einer gespeicherten Prozedur kann Fehler bei abhängigen Objekten und Skripts verursachen, wenn diese Objekte nicht aktualisiert werden. Weitere Informationen finden Sie unter Anzeigen der Abhängigkeiten einer gespeicherten Prozedur.

Metadaten

Fragen Sie die sys.objects-Katalogsicht ab, um eine Liste der vorhandenen Prozeduren anzuzeigen. Fragen Sie zur Anzeige der Prozedurdefinitionen die sys.sql_modules-Katalogsicht ab.

Sicherheit

Berechtigungen

Erfordert die CONTROL-Berechtigung für die Prozedur oder die ALTER-Berechtigung für das Schema, zu dem die Prozedur gehört, oder die Mitgliedschaft in der festen Serverrolle db_ddladmin.

Beispiele

Im folgenden Beispiel wird die gespeicherte Prozedur dbo.uspMyProc aus der aktuellen Datenbank entfernt.

DROP PROCEDURE dbo.uspMyProc;
GO

Im folgenden Beispiel werden mehrere gespeicherte Prozeduren aus der aktuellen Datenbank entfernt.

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

Siehe auch

Verweis

ALTER PROCEDURE (Transact-SQL)

CREATE PROCEDURE (Transact-SQL)

sys.objects (Transact-SQL)

sys.sql_modules (Transact-SQL)

Konzepte

Löschen einer gespeicherten Prozedur