加入收藏 | 设为首页 | 会员中心 | 我要投稿 岳阳站长网 (https://www.0730zz.com/)- 物联平台、混合云存储、数据仓库、智能推荐、智能数字人!
当前位置: 首页 > 数据库 > Oracle > 正文

oracle 创建同义词

发布时间:2020-07-29 18:12:24 所属栏目:Oracle 来源:互联网
导读:本教程用示例来说明在Oracle数据中如何创建和删除同义词(SYNONYM)。 概念 同义词是指数据库对象(表、视图、序列、存储过程等数据库对象)用另一个名字来引用。比如: 建立一个同义词可以排除一个对象名字的限制. 如果你的数据库有多个用户,USER_A要访问USER_

本教程用示例来说明在Oracle数据中如何创建和删除同义词(SYNONYM)。

概念

同义词是指数据库对象(表、视图、序列、存储过程等数据库对象)用另一个名字来引用。比如:

建立一个同义词可以排除一个对象名字的限制.
如果你的数据库有多个用户,USER_A要访问USER_B的TABLE1,只能使用USER_B.TABLE1
建一个同义词abc指向USER_B.TABLE1,那你就可以select * from abc了,而且public的同义词会直接出现在所有用户的面前,开发不就方便多了


创建同义词

语法:

[sql] view plain copy print ?
  1. CREATE[ORREPLACE][PUBLIC]SYNONYM[schema.]synonym_nameFOR[schema.]object_name[@dblink];

语法说明:

OR REPLACE: 在不使用DROP的前提下容许你重新创建(如果同义词已经存在)。

PUBLIC: 所创建的同义词是全局的同义词,所有数据库用户都可以使用。

schema: 要创建同义词的对象所在的schema,如果省略,则默认的应用对象在当前schema下。

object_name: 要创建同义词的对象,它可以是以下几种类型:

  • TABLE
  • VIEW
  • SEQUENCE
  • STORED PROCEDURE
  • FUNCTION
  • PACKAGE
  • MATERIALIZED VIEW
  • JAVA CLASS SCHEMA OBJECT
  • USER-DEFINED OBJECT
  • SYNONYM


示例:

copy CREATEPUBLICSYNONYMsuppliersFORapp.suppliers; 示例中创建的同义词名为suppliers,这样,其他schema下的用户可以使用该同义词来使用app下的suppliers表而不必加上app。例如:

copy SELECT*
  • FROMsuppliers;

  • 删除同义词

    语法

    copy DROP[PUBLIC]SYNONYM[schema.]synonym_name[FORCE]; 说明:

    PUBLIC: 容许删除PUBLIC同义词, 如果使用了PUBLIC关键字,则可以省略schema。

    FORCE:用来强制删除同义词,即使它在数据库中有其它的依赖。

    示例:

    copy DROPPUBLICSYNONYMsuppliers;

    (编辑:岳阳站长网)

    【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

      推荐文章
        热点阅读