DROP FUNCTION (Transact-SQL)
Entfernt eine oder mehrere benutzerdefinierte Funktionen aus der aktuellen Datenbank. Benutzerdefinierte Funktionen werden mithilfe von CREATE FUNCTION erstellt und mithilfe von ALTER FUNCTION geändert.
Syntax
DROP FUNCTION { [ schema_name. ] function_name } [ ,...n ]
Argumente
schema_name
Der Name des Schemas, zu dem die benutzerdefinierte Funktion gehört.function_name
Der Name der benutzerdefinierten Funktion oder Funktionen, die entfernt werden sollen. Die Angabe des Schemanamens ist optional. Der Servername und der Datenbankname können nicht angegeben werden.
Hinweise
DROP FUNCTION erzeugt einen Fehler, wenn Transact-SQL-Funktionen oder -Sichten in der Datenbank vorhanden sind, die auf diese Funktion verweisen und mithilfe von SCHEMABINDING erstellt wurden, oder wenn berechnete Spalten, CHECK-Einschränkungen oder DEFAULT-Einschränkungen vorhanden sind, die auf die Funktion verweisen.
DROP FUNCTION erzeugt außerdem einen Fehler, wenn berechnete Spalten vorhanden sind, die auf diese Funktion verweisen und indiziert wurden.
Berechtigungen
Um DROP FUNCTION ausführen zu können, benötigt ein Benutzer mindestens ALTER-Berechtigungen für das Schema, zu dem die Funktion gehört, oder CONTROL-Berechtigungen für die Funktion.
Beispiele
A. Löschen einer Funktion
Im folgenden Beispiel wird die benutzerdefinierte Funktion fn_SalesByStore aus dem Sales-Schema in der AdventureWorks-Beispieldatenbank gelöscht. Das Erstellen dieser Funktion wird in Beispiel B unter CREATE FUNCTION (Transact-SQL) beschrieben.
USE AdventureWorks;
GO
IF OBJECT_ID (N'Sales.fn_SalesByStore', N'IF') IS NOT NULL
DROP FUNCTION Sales.fn_SalesByStore;
GO