Oracle 同义词详解(synonym)
文章目录
- 1 概述
- 2 语法
- 2.1 权限
- 2.2 查询
- 2.3 创建
- 2.4 删除
- 3 扩展
- 3.1 官方文档
1 概述
1. 同义词(Synonym):相同意思的词、近义词。 -- 参考 '别名'select * from scott.emp; -- 使用前select * from emp; -- 使用后2. 同义词的分类(1) 私有同义词:仅对 '执行用户' 有效 -- synonym(2) 公有同义词:对 '所有用户' 均有效 -- public synonym 常用 -- owner = 'PUBLIC'3. 补充说明(1) 同义词的对象包括:表、视图、触发器、序列、过程、方法 等。 (2) 同义词在 '数据字典' 中定义,不占用存储空间(参考 '视图')(3) 同义词无法重名,否则报错提示:'ORA-00955:名称已由现有对象使用'
2 语法
2.1 权限
-- 1. 授权。如:授予 create any synonym 的权限
grant create any synonym to scott;-- 2. 回收。如:回收 create any synonym 的权限
revoke create any synonym to scott;-- 3. 查询所有可 授予|回收 的权限
select distinct t.privilegefrom dba_sys_privs twhere t.privilege like '%SYNONYM%'order by t.privilege;
2.2 查询
-- 查询范围,由大到小
select * from dba_synonyms; -- 仅 DBA 用户
select * from all_synonyms;
select * from user_synonyms;
2.3 创建
create [public] synonym <synonym_name> for [schema.] object[@db_link];-- 演示如下:提前准备 2 个用户 和 1 张表
-- (1) 用户:system、scott
-- (2) 表:departments_bak, system 用户执行以下语句
-- create table hr.departments_bak as select * from hr.departments;-- 1. 创建 公有同义词,建议 名称保持不变 system 执行
create public synonym departments_bak for hr.departments_bak;
-- (1) system、scott 均可访问
select * from departments_bak;-- 2. 创建 私有同义词,system 执行
-- drop synonym departments_bak; -- 先删除,避免影响测试
create synonym departments_bak for hr.departments_bak;
-- (1) system -- 执行用户,查询成功
-- (2) soctt -- 其它用户,查询报错
select * from departments_bak;
2.4 删除
drop [public] synonym <synonym_name>;-- 说明
当原对象被删除时,同义词依旧保留
当又存在原对象时,同义词依旧可以使用
3 扩展
3.1 官方文档
- 扩展:Oracle 官方文档 - 创建同义词语句
Oracle 同义词详解(synonym)相关推荐
- oracle同义词详解
在Oracle中对用户的管理是使用权限的方式来管理的,也就是说,如果我们想使用数据库,我们就必须得有权限,但是如果是别人将权限授予了我们, 我们也是能对数据库进行操作的,但是我们必须要已授权的表的名称 ...
- Oracle 错误代码详解
Oracle 错误代码详解及解决方式–ORA ORA-00001: 违反唯一约束条件 (.) 错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常. ORA-00017: 请求会话以设置跟踪事 ...
- Oracle 存储过程详解(上)
目录 一.存储过程与存储函数的定义 二.创建 / 执行存储过程所需的权限 1.resource权限 2.create.execute procedure权限 三.创建 / 执行存储过程 四.变量与参数 ...
- Oracle 数据字典详解
Oracle 数据字典详解 什么叫数据字典? 数据字典指的是描述数据的数据. 举个例子:我们在数据库里面创建了一个表,这个表位于哪个数据文件.这个表有哪些列.这个表的每一个列的数据类型.这个表的约束等 ...
- Oracle ASM 详解 收藏
Oracle ASM 详解 ASM:Automatic Storage Management, 是Oracle 主推的一种面向Oracle的存储解决方案, ASM 和 RDBMS 非常相似,ASM 也 ...
- oracle分区表编程,Oracle分区表详解
当前位置:我的异常网» 编程 » Oracle分区表详解 Oracle分区表详解 www.myexceptions.net 网友分享于:2013-10-28 浏览:25次 Oracle分区表详解 ...
- oracle有哪两种内存结构,Oracle体系结构详解(物理构造,内存结构和逻辑结构)...
当前位置:我的异常网» 数据库 » Oracle体系结构详解(物理构造,内存结构和逻辑结构 Oracle体系结构详解(物理构造,内存结构和逻辑结构) www.myexceptions.net 网友分 ...
- Oracle 冷备份详解【实战案例】
Oracle 冷备份详解 --准备工作 select * from v$database; select file_name from dba_data_files; create tablespac ...
- oracle里面asm的作用,Oracle ASM 详解
Oracle ASM 详解 ASM:Automatic Storage Management, 是Oracle 主推的一种面向Oracle的存储解决方案, ASM 和 RDBMS 非常相似,ASM 也 ...
- Oracle索引详解(索引的原理,创建索引,删除索引,修改索引等)
Oracle索引详解 一.索引概述 Oracle作为关系型数据库,用户查找数据与行的物理位置无关,表中的每一行均用一个ROWID来标识,当Oracle数据库中存储海量的记录时,就意味着有大量的ROWI ...
最新文章
- linux下文件系统不丢数据扩容方法
- oracle中间件微信公众号,对TP5.1中间件融合微信公众号代码的优化
- java 近似值 循环次数,java题求解
- 【OMP信道估计】基于OMP压缩感知的信道估计算法的MATLAB仿真
- 2050,一个属于年青人的大会
- python 绘制时频图 plt.specgram
- JavaScript复习使用定时器的简易式诸葛大力轮播图
- golang 类型说明
- 敏捷开发系列学习总结(13)——Spotify敏捷模式详解三部曲第一篇:研发团队
- 保证一致性吗_谈了千百遍的缓存数据一致性问题
- asp.net web新闻发布系统_Web.config在渗透中的作用
- [转载] Python中对 Excel 的相关详细操作(读取、写入、指定行、指定列、新增sheet工作表)
- 在Windows XP中如何释放并重新获得一个IP地址?
- udp java 检测连接_java创建udp连接 java udp怎样测试是否连接
- AutoCAD.net 自定义窗体及面板与CAD交互时的焦点切换问题(C#)
- class不生效 weblogic_weblogic部署常见问题
- python爬微博个人信息_新浪微博数据爬取Part 1:用户个人信息
- 使用js实现网页录音并上传服务器
- 高尔顿钉板概率模型的实现
- 不是所有国产软件都像360一样流氓!这些良心国产软件不该被埋没
热门文章
- 自定义android tv播放器,具有可自定义实时广播源的Android TV手机播放器
- Pandas 08-文本数据
- 两向量叉乘的计算公式_向量的数量积和向量积怎么算?
- 社群编码识别黑灰产攻击实践
- 计算机桌面壁纸在哪个文件夹,系统桌面背景在哪个文件夹
- 计算机 工具 文件夹 找不到,电脑附件中的“画图工具”找不到了,怎么办?
- 计算机桌面图标有阴影,电脑桌面图标标签出现阴影是怎么回事?桌面图标有背景解决方法...
- 如何在Foobar2000中使用iPod
- 我的Foobar2000定制版本
- 电子计算机属于输出设备的是,下列设备属于输入设备 下列设备中属于输出设备的是 A.键盘 B.鼠标 C.显示器 D.扫描仪...