DROP FUNCTION

Name

DROP FUNCTION -- 删除一个函数

Synopsis

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

描述

DROP FUNCTION 将删除一个现存的函数的引用。 要执行这条命令,用户必须是函数的所有者。 必须声明函数的参数类型,因为几个不同的函数可能会有同样的名字和不同的参数列表。

参数

name

现存的函数名称(可以有模式修饰)。

argmode

一个参数的模式:要么是 IN,要么是 OUT, 要么是 INOUT。如果省略了,缺省是 IN。 请注意 DROP FUNCTION 实际上并不注意 OUT 参数, 因为判断函数的身份只需要输入参数。因此列出 ININOUT 参数就足够了。

argname

参数的名字。请注意 DROP FUNCTION 实际上并不注意 OUT 参数, 因为判断函数的身份只需要输入参数。

argtype

如果有的话,是函数参数的类型(可以用模式修饰)。

CASCADE

自动删除依赖于函数的对象(比如操作符或触发器)。

RESTRICT

如果有任何依赖对象存在,则拒绝删除该函数。这个是缺省。

例子

这条命令删除平方根函数:

DROP FUNCTION sqrt(int4);
   

兼容性

在 SQL 标准里定义了一个 DROP FUNCTION 语句。 但和这条命令不兼容。

又见

CREATE FUNCTION, ALTER FUNCTION