企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
# ALTER OPERATOR ## Name ALTER OPERATOR -- 修改一个操作符的定义 ## Synopsis ``` ALTER OPERATOR _name_ ( { _left_type_ | NONE } , { _right_type_ | NONE } ) OWNER TO _new_owner_ ALTER OPERATOR _name_ ( { _left_type_ | NONE } , { _right_type_ | NONE } ) SET SCHEMA _new_schema_ ``` ## 描述 `ALTER OPERATOR`改变一个操作符的定义。 目前唯一能用的功能是改变操作符的所有者。 要使用ALTER OPERATOR,你必须是该操作符的所有者。 要修改所有者,你还必须是新的所有角色的直接或间接成员,并且该成员必须在此操作符的模式上有`CREATE`权限。 (这些限制强制了修改该所有者不会做任何通过删除和重建操作符不能做的事情。不过,超级用户可以以任何方式修改任意操作符的所有权。) ## 参数 `_name_` 一个现有操作符的名字(可以有模式修饰)。 `_left_type_` 操作符的左操作数的数据类型;如果没有左操作数,那么写`NONE`。 `_right_type_` 操作符的右操作数的数据类型;如果没有右操作数,那么写`NONE`。 `_new_owner_` 操作符的新所有者。 `_new_schema_` 操作符的新模式名。 ## 例子 改变一个用于`text`的用户定义操作符a @@ b: ``` ALTER OPERATOR @@ (text, text) OWNER TO joe; ``` ## 兼容性 SQL标准里没有`ALTER OPERATOR`语句。 ## 参见 [CREATE OPERATOR](#calibre_link-609), [DROP OPERATOR](#calibre_link-606)