DROP FUNCTION(Transact-SQL)
적용 대상: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System(PDW) Microsoft Fabric의 SQL 분석 엔드포인트 Microsoft Fabric의 웨어하우스
현재 데이터베이스에서 하나 이상의 사용자 정의 함수를 제거합니다. 사용자 정의 함수는 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
제거할 사용자 정의 함수의 이름입니다. 필요에 따라 스키마 이름을 지정할 수 있지만 서버 이름과 데이터베이스 이름은 지정할 수 없습니다.
설명
DROP FUNCTION은 데이터베이스에 이 함수를 참조하고 SCHEMABINDING을 사용하여 만든 Transact-SQL 함수나 뷰가 있거나 해당 함수를 참조하는 계산 열, CHECK 제약 조건 또는 DEFAULT 제약 조건이 있는 경우 실패합니다.
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)