DROP FUNCTION

适用于:勾选“是” Databricks SQL 勾选“是” Databricks Runtime

删除临时或永久的用户定义的函数 (UDF)。

Permissions

要在 Unity 目录中丢弃函数,你必须拥有MANAGE该函数的权限或是其所有者,同时还USE CATALOGUSE SCHEMA要拥有该函数所在的目录和模式。

根据 对象层次结构,父架构或目录的所有者以及具有 MANAGE 任一对象的用户也可以执行此操作。 他们所需的使用权限取决于他们所拥有的所有权或 MANAGE。 请参阅 MANAGE 的使用权限要求。

语法

DROP [ TEMPORARY ] FUNCTION [ IF EXISTS ] function_name

参数

  • function_name

    现有函数的名称。 可选择使用架构名称来限定函数名称。

  • TEMPORARY

    用于删除 TEMPORARY 函数。

  • IF EXISTS

    如果已指定,则仅在函数存在时才会引发异常。

示例

-- Create a permanent function `hello`
> CREATE FUNCTION hello() RETURNS STRING RETURN 'Hello World!';

-- Create a temporary function `hello`
> CREATE TEMPORARY FUNCTION hello() RETURNS STRING RETURN 'Good morning!';

-- List user functions
> SHOW USER FUNCTIONS;
  default.hello
          hello

-- Drop a permanent function
> DROP FUNCTION hello;

-- Try to drop a permanent function which is not present
> DROP FUNCTION hello;
Error: ROUTINE_NOT_FOUND

-- List the functions after dropping, it should list only temporary function
> SHOW USER FUNCTIONS;
 hello

-- Drop a temporary function if exists
> DROP TEMPORARY FUNCTION IF EXISTS hello;