定义新同义词

语法

CREATE [OR REPLACE] [PUBLIC] SYNONYM [schema.]syn_name
        FOR object_schema.object_name[@dblink_name];

说明

CREATE SYNONYM 为某些数据库对象类型定义同义词。Advanced Server 支持以下对象的同义词:

  • 视图
  • 具体化视图
  • 序列
  • 存储过程
  • 存储函数
  • 类型
  • 可通过 database link 访问的对象
  • 其他同义词

参数

参数 说明
syn_name syn_name 是同义词的名称。同义词名称在 schema 中必须是唯一的。
schema schema 指定同义词所在 schema 的名称。如果未指定 schema 名称,则在搜索路径中的第一个现有 schema 中创建同义词。
object_name object_name 指定对象的名称。
object_schema object_schema 指定被引用对象所在的 schema 的名称。
dblink_name dblink_name 指定通过其访问对象的 database link 的名称。

包括 REPLACE 子句,以将现有同义词定义替换为新的同义词定义。

包括 PUBLIC 子句,以在 public schema 中创建同义词。CREATE PUBLIC SYNONYM 命令与 Oracle 数据库兼容,可创建位于 public schema 中的同义词。

CREATE [OR REPLACE] PUBLIC SYNONYM syn_name FOR object_schema.object_name;

以下只是一种简写方式:

CREATE [OR REPLACE] SYNONYM public.syn_name FOR object_schema.object_name;

注释

对同义词所引用对象的访问由该同义词当前用户的权限决定;同义词用户必须对基础数据库对象具备适当权限。

示例

在 schema 中为 emp 表创建名为 enterprisedb 的同义词:

CREATE SYNONYM personnel FOR enterprisedb.emp;