更新时间:2024-06-03 GMT+08:00

ALTER SYNONYM

功能描述

修改SYNONYM对象的所有者。

注意事项

  • 目前仅支持修改SYNONYM对象的所有者。
  • 只有系统管理员有权限修改SYNONYM对象的所有者信息。当三权分立开关打开时,系统管理员默认没有权限修改SYNONYM对象的所有者。
  • 新所有者必须具有SYNONYM对象所在模式的CREATE权限。
  • 不支持修改PUBLIC同义词。

语法格式

ALTER SYNONYM synonym_name
    OWNER TO new_owner;

参数描述

  • synonym_name

    待修改的同义词名字,可以带模式名。

    取值范围:字符串,需要符合标识符命名规范

  • new_owner

    同义词对象的新所有者。

    取值范围:字符串,有效的用户名。

示例

--创建系统管理员用户。
gaussdb=# CREATE USER sysadmin WITH SYSADMIN PASSWORD '********';

--切换管理员用户。
gaussdb=# \c - sysadmin

--创建同义词t1。
gaussdb=# CREATE OR REPLACE SYNONYM t1 FOR ot.t1;

--创建新用户u1。
gaussdb=# CREATE USER u1 PASSWORD '********';

--给新用户赋权限。
gaussdb=# GRANT ALL ON SCHEMA sysadmin TO u1;

--修改同义词t1的owner为u1。
gaussdb=# ALTER SYNONYM t1 OWNER TO u1;

--删除同义词t1。
gaussdb=# DROP SYNONYM t1;

--收回用户u1权限。
gaussdb=# REVOKE ALL ON SCHEMA sysadmin FROM u1;

--删除用户u1。
gaussdb=# DROP USER u1;

--切换到初始用户init_user,请使用真实的初始用户名称替换init_user。
gaussdb=# \c - init_user

--删除用户sysadmin。
gaussdb=# DROP USER sysadmin;

相关链接

CREATE SYNONYMDROP SYNONYM