DROP FUNCTION

删除函数。

概要

DROP FUNCTION [IF EXISTS] name ( [ [argmode] [argname] argtype
                [, ...] ] ) [CASCADE | RESTRICT]

描述

DROP FUNCTION删除现有函数的定义。 要执行此命令,用户必须是该函数的所有者。 必须指定函数的参数类型,因为可能存在多个具有相同名称和不同参数列表的不同函数。

参数

IF EXISTS

  • 如果该函数不存在,请不要报错。在这种情况下会发出通知。

name

  • 现有函数的名称(可以由模式指定)。

argmode

  • 参数的模式:IN,OUT,INOUT或VARIADIC。 如果省略,则默认值为IN。 请注意,由于仅需要输入参数来确定函数的标识,因此DROP FUNCTION实际上并不关注OUT参数。 因此,列出IN,INOUT和VARIADIC参数就足够了。

argname

  • 参数的名称。 请注意,由于仅需要参数数据类型来确定函数的标识,因此DROP FUNCTION实际上并不关注参数名称。

argtype

  • 函数参数的数据类型(可以由模式指定)(如果有)。

CASCADE

  • 自动删除依赖于函数的对象,例如运算符。

RESTRICT

  • 如果有任何对象依赖该函数,则拒绝删除该函数。 这是默认值。

示例

删除平方根函数:

DROP FUNCTION sqrt(integer);

兼容性

SQL标准中定义了DROP FUNCTION语句,但该命令与此命令不兼容。

另见

ALTER FUNCTION , CREATE FUNCTION