DROP FUNCTION (Transact-SQL)

적용 대상:SQL 서버Azure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsMicrosoft Fabric 의 SQL 분석 엔드포인트Microsoft Fabric 의 웨어하우스Microsoft Fabric의 SQL 데이터베이스

현재 데이터베이스에서 하나 이상의 사용자 정의 함수를 제거합니다. 사용자 정의 함수는 를 사용하여 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 and Microsoft Fabric

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

인수

존재하는 경우
이미 있는 경우에만 함수를 조건적으로 삭제합니다. SQL Server 2016부터 및 SQL Database에서 사용할 수 있습니다.

schema_name
사용자 정의 함수가 속한 스키마의 이름입니다.

function_name
제거할 사용자 정의 함수의 이름입니다. 필요에 따라 스키마 이름을 지정할 수 있지만 서버 이름과 데이터베이스 이름은 지정할 수 없습니다.

설명

DROP FUNCTION 이 함수를 참조하는 함수나 뷰가 데이터베이스에 Transact-SQL 존재하며 SCHEMABINDING을 사용해 생성되었거나, 계산된 열, CHECK 제약 조건 또는 DEFAULT 함수를 참조하는 제약 조건이 있으면 실패합니다.

DROP FUNCTION 이 함수를 참조하는 계산된 열이 있고 인덱스가 되어 있으면 실패합니다.

사용 권한

최소한 를 실행 DROP FUNCTION하려면 함수가 속한 스키마에 대해 ALTER 권한 또는 함수에 대한 CONTROL 권한을 가져야 합니다.

예제

A. 함수 삭제

다음 예시는 AdventureWorks2025 샘플 데이터베이스의 스키마에서 fn_SalesByStore 사용자 정의 함수를 Sales 제거합니다. 이 함수를 만들려면 (Transact-SQL)의CREATE FUNCTION 예시 B를 참조하세요.

DROP FUNCTION Sales.fn_SalesByStore;