DROP FUNCTION
DROP FUNCTION
현재/지정된 스키마에서 지정한 사용자 정의 함수(UDF) 또는 외부 함수를 제거하는 명령어입니다.
출처: 문서
본문
DROP FUNCTION은 현재/지정된 스키마에서 지정한 사용자 정의 함수(UDF) 또는 외부 함수를 제거합니다. 관련 명령어로 CREATE FUNCTION, ALTER FUNCTION, SHOW FUNCTIONS, DESCRIBE FUNCTION이 있어요.
구문 (Syntax)
DROP FUNCTION [ IF EXISTS ] <name> ( [ <arg_data_type> , ... ] )
파라미터 (Parameters)
- name — 삭제할 UDF의 식별자를 지정합니다. 식별자에 공백이나 특수 문자가 포함된 경우 전체 문자열을 큰따옴표로 감싸야 합니다. 큰따옴표로 감싼 식별자는 대소문자를 구분해요.
- arg_data_type [ , ... ] — UDF 인자의 데이터 유형(있는 경우)을 지정합니다. 인자 유형은 UDF가 이름 오버로딩을 지원하기 때문에(즉, 같은 스키마의 두 UDF가 같은 이름을 가질 수 있음) 필요하며, 인자 유형으로 삭제하려는 UDF를 식별합니다.
사용 참고 사항 (Usage notes)
모든 언어:
- 삭제된 함수는 복구할 수 없습니다. 다시 생성해야 합니다.
IF EXISTS절을 지정하고 대상 객체가 존재하지 않으면, 명령어는 오류를 반환하지 않고 성공적으로 완료됩니다.
Java, Python, Scala:
- 스테이지의 파일(예: .jar 파일이나 .py 파일)에 코드를 저장하는 UDF의 경우, DROP FUNCTION 명령어는 해당 파일을 제거하지 않습니다. 서로 다른 UDF가 같은 파일의 서로 다른 함수/메서드를 사용할 수 있으므로, 어떤 UDF가 파일을 참조하는 동안에는 파일을 제거하면 안 됩니다. Snowflake는 각 스테이지 파일에 대한 참조 수를 저장하지 않으며, 남은 참조가 없을 때 그 스테이지 파일을 자동으로 제거하지도 않습니다.
예제 (Examples)
다음은 DROP FUNCTION 명령어를 보여줍니다.
DROP FUNCTION multiply(number, number);
--------------------------------+
status |
--------------------------------+
MULTIPLY successfully dropped. |
--------------------------------+