分享方式:


DROP FUNCTION (Transact-SQL)

適用於:SQL Server Azure SQL 資料庫 Azure SQL 受控執行個體 Azure Synapse Analytics Analytics Platform System (PDW) Microsoft Fabric 的 SQL 端點分析 Microsoft Fabric 的倉儲

從目前資料庫移除一或多個使用者自訂函數。 使用者定義函數是使用 CREATE FUNCTION 建立的,並使用 ALTER FUNCTION 加以修改。

DROP 函數支援原生編譯的純量使用者定義函數。 如需詳細資訊,請參閱記憶體內部 OLTP 的純量使用者定義函數

Transact-SQL 語法慣例

語法

 -- SQL Server, Azure SQL Database 

DROP FUNCTION [ IF EXISTS ] { [ schema_name. ] function_name } [ ,...n ]   
[;]
 -- Azure Synapse Analytics, Parallel Data Warehouse, Microsoft Fabric

DROP FUNCTION [IF EXISTS] [ schema_name. ] function_name
[;] 

引數

IF EXISTS
只有在函數已存在時,才能有條件地將其卸除。 自 SQL Server 2016 和 SQL Database 起開始提供。

schema_name
這是使用者定義函數所屬的結構描述名稱。

function_name
這是要移除的使用者自訂函數名稱。 您可以選擇性地指定結構描述名稱。 不能指定伺服器名稱和資料庫名稱。

備註

資料庫中如有 Transact-SQL 函數或檢視參考此函數,或是使用 SCHEMABINDING 建立,或是包含參考此函數的計算資料行、CHECK 條件約束或 DEFAULT 條件約束,DROP FUNCTION 將會失敗。

如果有計算資料行參考這個函數,而且已經產生索引,DROP FUNCTION 就不會成功。

權限

若要執行 DROP FUNCTION,使用者至少必須對該函數所屬的結構描述具備 ALTER 權限,或是對該函數具備 CONTROL 權限。

範例

A. 卸除函數

下列範例會 fn_SalesByStoreSales AdventureWorks2022 範例資料庫中的架構卸除使用者定義的函式。 若要建立此函數,請參閱 CREATE 函數 (Transact-SQL) 中的範例 B。

DROP FUNCTION Sales.fn_SalesByStore;  

另請參閱

ALTER FUNCTION (Transact-SQL)
CREATE FUNCTION (Transact-SQL)
OBJECT_ID (Transact-SQL)
EVENTDATA (Transact-SQL)
sys.sql_modules (Transact-SQL)
sys.parameters (Transact-SQL)