DROP FUNCTION (Transact-SQL)
Applies to: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW) Microsoft Fabric の SQL 分析エンドポイント Microsoft Fabric のウェアハウス
1 つまたは複数のユーザー定義関数を現在のデータベースから削除します。 ユーザー定義関数は CREATE FUNCTION を使って作成し、ALTER FUNCTION を使って変更します。
DROP 関数では、ネイティブ コンパイル、スカラー ユーザー定義関数をサポートしています。 詳しくは、「インメモリ OLTP でのユーザー定義のスカラー関数」をご覧ください。
構文
-- 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
削除するユーザー定義関数の名前です。 スキーマ名の指定は省略可能です。 サーバー名とデータベース名は指定できません。
注釈
データベース内に、この関数を参照し SCHEMABINDING を使って作成された Transact-SQL 関数またはビューがある場合、または、この関数を参照する計算列、CHECK 制約、DEFAULT 制約がある場合、DROP FUNCTION は失敗します。
この関数を参照し、インデックスが作成された計算列がある場合、DROP FUNCTION は失敗します。
アクセス許可
DROP FUNCTION を実行するには、少なくとも、関数が属するスキーマに対する ALTER 権限、または関数に対する CONTROL 権限が必要です。
例
A. 関数を削除する
次の例では、AdventureWorks2022 サンプル データベースの Sales
スキーマから、fn_SalesByStore
ユーザー定義関数を削除します。 この関数を作成する方法については、「CREATE FUNCTION (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)