DROP FUNCTION

DROP FUNCTION

删除函数。

概要

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

描述

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

参数

IF EXISTS
如果该函数不存在,请不要报错。在这种情况下会发出通知。
name
现有函数的名称(可以由模式指定)。
argmode
参数的模式:INOUTINOUTVARIADIC。 如果省略,则默认值为IN。 请注意,由于仅需要输入参数来确定函数的标识,因此DROP FUNCTION实际上并不关注OUT参数。 因此,列出ININOUTVARIADIC参数就足够了。
argname
参数的名称。 请注意,由于仅需要参数数据类型来确定函数的标识,因此DROP FUNCTION实际上并不关注参数名称。
argtype
函数参数的数据类型(可以由模式指定)(如果有)。
CASCADE
自动删除依赖于函数的对象,例如运算符。
RESTRICT
如果有任何对象依赖该函数,则拒绝删除该函数。 这是默认值。

示例

删除平方根函数:

DROP FUNCTION sqrt(integer);

兼容性

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