Oracle的同义词

从字面上理解就是别名的意思,和视图的功能类似。就是一种映射关系。

create synonym 同义词名称 for 数据库对象@DB_Link;

        Or replace同义词存在的情况下替换

CREATE [OR REPLACE] [PUBLIC] SYNONYM [ schema.] 同义词名称 FOR [ schema.] object [ @dblink ];

 

1.创建同义词语句:

  create public synonym table_name for user.table_name; 

    其中第一个user_table和第二个user_table可以不一样。

    此外如果要创建一个远程的数据库上的某张表的同义词,需要先创建一个Database Link(数据库连接)来扩展访问,然后在使用如下语句创建数据库同义词:create synonym table_name for table_name@DB_Link;

当然,你可能需要在user用户中给当前用户(user2)授权: grant select/delete/update on user2

2.删除同义词:

    drop public synonym table_name; 

3.查看所有同义词:

    select * from dba_synonyms 

  创建私有同义词语法:

   Create [OR REPLACE] SYNONYM [schema.]synonym_name FOR [schema.]object_name;

   其中:OR REPLACE表示在同义词存在的情况下替换该同义词。

         synonym_name表示要创建的同义词的名称。

         object_name指定要为之创建同义词的对象的名称。

   示例1:create synonym s_emp for scott.emp;

 

   创建公有同义词语法:

   Create PUBLIC SYNONYM synonym_name FOR [schema.]object_name;

   示例2:create public synonym emp_syn from scott.emp;

posted on 2021-11-01 17:28  森花  阅读(312)  评论(0编辑  收藏  举报