Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für: SQL Server
Azure SQL-Datenbank
Sie können benutzerdefinierte Funktionen in SQL Server löschen (verwerfen), indem Sie SQL Server Management Studio oder Transact-SQL verwenden.
Sie können die Funktion nicht löschen, wenn es in der Datenbank Transact-SQL-Funktionen oder -Anzeigen gibt, die auf diese Funktion verweisen und mit SCHEMABINDING erstellt wurden, oder wenn es berechnete Spalten, CHECK-Beschränkungen oder DEFAULT-Beschränkungen gibt, die auf diese Funktion verweisen.
Sie können die Funktion nicht löschen, wenn berechnete Spalten vorhanden sind, die auf diese Funktion verweisen und indiziert wurden.
Erfordert die ALTER-Berechtigung im Schema, zu der die Funktion gehört, oder die CONTROL-Berechtigung für die Funktion.
Klicken Sie neben der Datenbank, die die Funktion enthält, die Sie ändern möchten, auf das Pluszeichen.
Wählen Sie neben dem Ordner Programmierbarkeit das Pluszeichen.
Klicken Sie neben dem Ordner, der die Funktion enthält, die Sie ändern möchten, auf das Pluszeichen:
- Table-valued Function
- Skalarwertfunktion
- Aggregatfunktion
Klicken Sie mit der rechten Maustaste auf die Funktion, die Sie löschen möchten, und klicken Sie dann auf Löschen.
Klicken Sie im Dialogfeld Objekt löschen auf OK.
Wählen Sie Abhängigkeiten anzeigen in der Dialogbox Objekt löschen, um die Dialogbox function_name Abhängigkeiten zu öffnen. Es werden alle Objekte angezeigt, die von der Funktion abhängig sind, und alle Objekte, von denen die Funktion abhängig ist.
Stellen Sie im Objekt-Explorer eine Verbindung mit einer Datenbank-Engine-Instanz her.
Klicken Sie in der Standardleiste auf Neue Abfrage.
Kopieren Sie das folgende Beispiel in das Abfragefenster, und klicken Sie dann auf Ausführen.
Im folgenden Codebeispiel wird eine benutzerdefinierte Funktion erstellt:
-- creates function called "Sales.ufn_SalesByStore" USE AdventureWorks2022; GO CREATE FUNCTION Sales.ufn_SalesByStore (@storeid int) RETURNS TABLE AS RETURN ( SELECT P.ProductID, P.Name, SUM(SD.LineTotal) AS 'Total' FROM Production.Product AS P JOIN Sales.SalesOrderDetail AS SD ON SD.ProductID = P.ProductID JOIN Sales.SalesOrderHeader AS SH ON SH.SalesOrderID = SD.SalesOrderID JOIN Sales.Customer AS C ON SH.CustomerID = C.CustomerID WHERE C.StoreID = @storeid GROUP BY P.ProductID, P.Name ); GO
Im folgenden Codebeispiel wird die benutzerdefinierte Funktion gelöscht, die im vorherigen Beispiel erstellt wurde.
USE AdventureWorks2022; GO -- determines if function exists in database IF OBJECT_ID (N'Sales.fn_SalesByStore', N'IF') IS NOT NULL -- deletes function DROP FUNCTION Sales.fn_SalesByStore; GO