使用同义词
同义词是方案对象的别名。通过使用同义词,一方面可以简化对象访问,另一方面可以提高对象访问的安全性。
在Oracle数据库中,同义词包括公共同义词和私有同义词俩种类型,其中公共同义词是指所有用户都可以直接引用的同义词。
并且这种同义词由PUBLIC用户组所拥有;私有同义词是指只能由其方案用户直接引用的同义词。
如果数据库用户要访问公共同义词,那么可以直接引用,不需要加方案名;
如果数据库用户要访问其他方案的私有同义词,那么必须加方案名作为前缀。
注意,无论是访问公共同义词还是私有同义词,数据库用户必须要具有访问同义词基对象的权限。
一、建立同义词
1.建立公共同义词
建立公共同义词是使用CREATE PUBLIC SYNONYM语句来完成的。如果用户要建立公共同义词,那么要求该用户必须具有CREATE PUBLIC SYNONYM系统权限。语法如下:
CREATE PUBLIC SYNONYM synonym FOR [schema.]object;
如上所示,synonym用于指定同义词名,schema用于指定方案名,object用于指定对象名。
CREATE PUBLIC SYNONYM public_emp FOR scott.emp;
当执行了以上语句之后,会建立公共同义词public_emp。因为该同义词属于PUBLIC用户组,所以任何用户都可以直接引用该同义词。
注意,如果用户要使用该同义词,必须具有访问SCOTT.EMP表的权限。
使用同义词的实例如下:
UPDATE public_emp SET sal=3100 WHERE ename='SCOTT';
SELECT ename,sal,job FROM public_emp WHERE ename='SCOTT';
2.建立私有同义词
建立私有同义词是使用CREATE SYNONYM语句来完成的。如果在当前方案中建立私有同义词,那么数据库用户必须具有CREATE SYNONYM系统权限;如果在其他方案中建立私有同义词,
那么数据库用户必须具有CREATE ANY SYNONYM系统权限。语法如下:
如上所示,synonym用于指定同义词名,schema用于指定方案名,object用于指定对象名。
CREATE SYNONYM private_emp FOR scott.emp;
当执行了以上语句之后,会建立私有同义词PRIVATE_EMP。因为该同义词是私有同义词,所以只有当前用户可以直接引用,而其他用户在引用时必须带有方案名。
SELECT ename,sal,job FROM scott.private_emp WHERE ename='SCOTT';
二、删除同义词
1.删除公共同义词
删除公共同义词是使用DROP PUBLIC SYNONYM语句来完成的。如果用户要删除公共同义词,那么要求用户必须具有DROP PUBLIC SYNONYM系统权限。语法如下:
DROP PUBLIC SYNONYM synonym;
如上所示,synonym用于指定要删除的同义词名称。
DROP PUBLIC SYNONYM public_emp;
2.删除私有同义词
删除私有同义词是使用DROP SYNONYM语句来完成的。用户可以直接删除其自身方案的同义词,而如果要删除其他方案的同义词,则用户必须具有DROP ANY SYNONYM系统权限。语法如下:
DROP SYNONYM synonym;
如上所示,synonym用于指定要删除的同义词名称。
DROP SYNONYM private_emp;
三、显示同义词信息
当建立同义词时,Oracle会将同义词的信息存放到数据字典中。通过查询数据字典视图USER_SYNONYMS,可以显示当前用户所有同义词的详细信息。
注意,因为Oracle为该数据字典视图提供了同义词SYN,所以可以使用SYN取得当前用户的私有同义词。
SELECT table_owner,table_name FROM syn
WHERE synonym_name='PRIVATE_EMP';
如上所示,table_owner用于标识同义词所对应对象的对象所有者,table_name用于标识同义词对应的对象名,synonym_name用于标识同义词的名称。

Oracle--使用同义词相关推荐

  1. Oracle synonym 同义词

    Oracle synonym 同义词 1.Oracle synonym 同义词是数据库当前用户通过给另外一个用户的对象创建一个别名,然后可以通过对别名进行查询和操作,等价于直接操作该数据库对象. 2. ...

  2. oracle mysql 同义词,有关Oracle数据库中同义词的简单介绍

    Oracle数据库中有关同义词的一些知识是我们本文主要要介绍的内容,首先我们先看一个语句,如下: create synonym table_name for user.table_name; 其中** ...

  3. 【DB.Oracle】同义词——SYNONYM

    Oracle中同义词是任何表.视图.物化视图.序列.存储过程.函数.包.类型.JAVA类对象.用户定义类型,或是其他的同义词的别名.由于其只是一个别名,所以除了在数据字典中的定义外不占任何空间. 同义 ...

  4. Oracle创建同义词及dblink

    一.定义 oracle的同义词从字面上理解是别名的意思,和视图的功能类似,就是一种映射关系.在使用同义词时,oracle数据库将他翻译成对应方案对象的名字.与视图对象类似,同义词不占用实际存储空间,只 ...

  5. Oracle数据库同义词

    ORACLE同义词总结 同义词概念 Oracle的同义词(synonyms)从字面上理解就是别名的意思,和视图的功能类似,就是一种映射关系.它可以节省大量的数据库空间,对不同用户的操作同一张表没有多少 ...

  6. ORACLE授权/同义词/序列语句

    ORACLE 授权/同义词/序列 点关注不迷路,欢迎再访! 精简博客内容,尽量已专业术语来分享. 努力做到对每一位认可自己的读者负责. 帮助别人的同时更是丰富自己的良机. 1.授权 -- Grant/ ...

  7. oracle mysql 同义词_Oracle数据库创建同义词(synonym)详细讲解

    1.1数据库创建同义词(synonym) Oracle的同义词(synonyms)从字面上理解就是别名的意思,和视图的功能类似,就是一种映射关系.它可以节省大量的数据库空间,对不同用户的操作同一张表没 ...

  8. oracle表关联词语,Oracle的同义词(synonyms)详解

    Oracle的同义词(synonyms)详解 从字面上理解就是别名的意思,和视图的功能类似.就是一种映射关系. 同义词语法:CREATE [PUBLIC] SYNONYM synonym FOR ob ...

  9. Oracle的同义词(synonyms)

    Oracle的同义词(synonyms)从字面上理解就是别名的意思,和试图的功能类似,就是一种映射关系.本文介绍如何创建同义词语句,删除同义词以及查看同义词语句. oracle的同义词总结: 从字面上 ...

  10. Oracle 建立同义词

    Oracle的同义词(synonyms)从字面上理解就是别名的意思,和试图的功能类似,就是一种映射关系.本文介绍如何创建同义词语句,删除同义词以及查看同义词语句. oracle的同义词总结: 从字面上 ...

最新文章

  1. 悟道 · 文溯详解:蛋白质序列的大规模预训练
  2. 【微读书】《人工智能颠覆未来战争》连载之一:机器战胜人类?——AlphaGo人机对战的启示...
  3. 通过Corosync实现Mysql高可用,以及LVS+ldirectord高可用并状态检测
  4. 算法--运算的最小翻转次数
  5. 计算机图形学在线作业,电子科大16秋《计算机图形学》在线作业3答案
  6. 放弃耳机孔、放弃按键的手机我们是怎么接受并习惯的?
  7. 基于VSFTP的本地YUM源及光盘YUM源搭建
  8. Python在线考试系统防作弊功能的思路和实现
  9. Zabbix监控和分布式部署实施方案
  10. 不好好写代码,就只能回去当总理了!
  11. 软件项目管理第4版课后习题[附解析]第九章
  12. JDK6升级JDK8踩雷
  13. Euraka启动记录
  14. SecureCRT绿色版的下载和安装
  15. 白杨SEO:必应搜索引擎的特点,必应SEO优化怎么做?
  16. OBS开源免费桌面视频直播工具/直播推流工具使用指南
  17. 黑客知识之7种DoS攻击方法简述
  18. RHCE证书考试报名流程
  19. 打造员工能力(组织能力杨三角系列三)
  20. android 后台运行service实现和后台的持续交互

热门文章

  1. 月薪2w运营人必备的120款运营神器
  2. Cisco设备telnet登录设置
  3. 洲际酒店集团发布全新奢华精选品牌Vignette Collection
  4. 十字军之王3等待服务器响应,王国风云3作弊码有什么 十字军之王3控制台代码分享_游侠网...
  5. 三、GAMIT解算之分步处理
  6. 跑通SpringBoot + dubbo3.0.8 + zookeeper
  7. 如何实现微信内域名防封,微信域名防封跳转
  8. 计算机合成音乐的交换标准,音乐合成器
  9. Java子类和父类的初始化执行顺序
  10. 如何利用华硕Mesh系统路由器在780平方公尺大的场域架设可靠的WiFi系统?