ALTER AGGREGATE (ALTER AGGREGATE name ( type [ , ... ] ) RENAME TO new_na|8月更文挑战

158 阅读2分钟

这是我参与8月更文挑战的第30天,活动详情查看:8月更文挑战

ALTER AGGREGATE

名称 ALTER AGGREGATE -- 修改一个聚集函数的定义

语法 ALTER AGGREGATE name ( type [ , ... ] ) RENAME TO new_name

ALTER AGGREGATE name ( type [ , ... ] ) OWNER TO new_owner

ALTER AGGREGATE name ( type [ , ... ] ) SET SCHEMA new_schema

描述 ALTER AGGREGATE 改变一个聚集函数的定义。

要使用 ALTER AGGREGATE ,你必须拥有该聚集函数。要改变一个聚集函数的模式,你必须在新模式上有 CREATE 权限。要改变所有者,你必须是新所有角色的一个直接或间接成员,并且该角色必须在聚集函数的模式上有 CREATE 权限。这些限制强制了修改该所有者不会做任何通过删除和重建聚集函数不能做的事情。不过,超级用户可以用任何方法任意更改聚集函数的所有者。

参数 name

一个现有的聚集函数的名字(可以有模式修饰)

type

聚集函数操作的参数的数据类型,要引用一个零参数聚集函数,可以使用 * 代替输入数据类型列表。

new_name

聚集函数的新名字

new_owner

聚集函数的新所有者

new_schema

聚集函数的新模式

例子 把一个接受 integer 类型参数的聚集函数 myavg 重命名为 my_average :

ALTER AGGREGATE myavg(integer) RENAME TO my_average; 把一个接受 integer 类型参数的聚集函数 myavg 的所有者改变为 joe :

ALTER AGGREGATE myavg(integer) OWNER TO joe; 把一个接受 integer 类型参数的聚集函数 myavg 移动到模式 myschema 里:

ALTER AGGREGATE myavg(integer) SET SCHEMA myschema;

兼容性 SQL 标准里面没有 ALTER AGGREGATE 语句。

众多资源:PostgreSQL中文社区 ———————————————— 版权声明:本文为CSDN博主「EngineerForSoul」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:blog.csdn.net/lingyiwin/a…