分享

Oracle PL/SQL开发基础(第十五弹:同义词)

 张小龙net馆藏 2017-10-17

Oracle数据库中对权限的管理是通过方案来进行的,一个方案通常就是一个用户名。当用户A进入Oracle后,其所创建的数据库对象可以称为A方案对象,为了让B方案用户可以访问,除了为B用户分配权限外,B用户访问A用户的对象必须使用“方案名.数据库对象名”这样的格式,比如要在hr方案中访问scott方案中的表emp,则需要使用“scott.emp”这样的语法形式,为了提供友好的访问名称,Oracle提供了同义词的功能。

同义词简介

创建同义词的目的是简化对目标对象的访问,使用户易于查阅表的所有者,并且使对象的名字变短。同义词并不占用实际存储空间,只在数据字典中保存了同义词的定义。Oracle数据库中的大部分数据库对象,如表、视图、序列、存储过程、包等,都可以定义同义词。
同义词可以分为如下两种类型:
- 公有同义词:能被所有的数据库用户访问的同义词。
- 私有同义词:只能由创建的用户访问的同义词。

创建和使用同义词

语法如下:

CREATE [PUBLIC] SYNONYM synonym
FOR object;
  • 1
  • 2

例如:

CREATE PUBLIC SYNONYM  scottemp
    FOR    scott.emp; 
  • 1
  • 2

同义词被创建以后,就可以像使用本地表一样对scottemp进行操作,如:

SELECT * FROM scottemp;
DELETE FROM scottemp WHERE empno = 100;
  • 1
  • 2

删除同义词

如:

DROP PUBLIC SYNONYM scottemp;
  • 1

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多