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 参数,
因为判断函数的身份只需要输入参数。因此列出 IN 和 INOUT 参数就足够了。
- argname
参数的名字。请注意 DROP FUNCTION 实际上并不注意 OUT 参数,
因为判断函数的身份只需要输入参数。
- argtype
如果有的话,是函数参数的类型(可以用模式修饰)。
- CASCADE
自动删除依赖于函数的对象(比如操作符或触发器)。
- RESTRICT
如果有任何依赖对象存在,则拒绝删除该函数。这个是缺省。
例子
这条命令删除平方根函数:
DROP FUNCTION sqrt(int4);
兼容性
在 SQL 标准里定义了一个 DROP FUNCTION 语句。
但和这条命令不兼容。