文档章节

oracle 创建同义词

之渊
 之渊
发布于 2017/04/19 09:08
字数 538
阅读 29
收藏 0

创建同义词对于我的项目来说, 主要是为了 jdbc 写SQL的时候, 不需要在 表的前面加上 用户名称。 因为 SQL已经写好了,改起来麻烦,开发起来也麻烦。 即, A 用户要访问B 用户的表,不用加上 b.xxx 的表名。 可是百度了一通, 说得 看起来乱乱的, 对于菜鸟来说, 看起来懵了,还有什么鬼视图的。。看不懂。 只好自己尝试了。 比如 ehr 用户要访问 bms 用户下的表 CPCUSER 如果不使用同义词 即要使用 :

SELECT * FROM bms.CPCUSER WHERE username='xx'

怎么 创建同义词呢, 是在 ehr 用户 下面 创建 同义词的, 即 首先 ehr 用户要有 查询 bms 用户的表的权限,也要有 创建 同义词的权限。、 如果没有请给他创建权限。 或者使用 sys 更高一级的用户去创建同义词, 如果不行,就创建 公用的 public 的同义词。 由于我的 ehr 是有 dba的权限的, 所以我就 在 ehr 下创建同义词了,因为 就是 bms有 dba的权限,创建同义词并没有效果,也许我创建的并不是 public 的同义词吧 使用 ehr 用户 登录 ,执行 下面的创建同义词的语句:

create synonym CPCORG for bms.CPCORG ;

这时候可以在 使用ehr 用户下执行下面的SQL 查询了,不用加上 用户的名称了:

SELECT * FROM CPCORG  WHERE  ORGNAME='电热公司'
	

如果比较多表怎么办呢? 比如:

select 'CREATE SYNONYM '||table_name||'  FOR BMS.'||table_name ||';' from ALL_TABLES where owner = 'BMS' 
	AND table_name NOT LIKE 'TMP%'
  

将查询出来的 结果复制 再 批量执行创建同义词 即可。 相同的方法,也是可以 批量 将 对应表给 ehr 用户 授权查询 等权限的

当前 如果当前 的用户没有创建或删除 同义词的权限怎么办? 使用 dab 或者 sys 权限的 账户登录 执行 下面的 同义词 语句即可

DROP SYNONYM EHR.CPCORG; -- 删除EHR 用户的 同义词
		
                --为 ehr用户 创建 bms表cpcorg的同义词 
		create synonym EHR.CPCORG for bms.CPCORG ; 

© 著作权归作者所有

之渊
粉丝 14
博文 649
码字总数 200420
作品 0
佛山
程序员
私信 提问
Oracle 同义词创建及其作用

在Oracle中对用户的管理是使用权限的方式来管理的,也就是说,如果我们想使用数据库,我们就必须得有权限,但是如果是别人将权限授予了我们,我们也是能对数据库进行操作的,但是我们必须要已...

鉴客
2011/07/12
292
0
Oracle同义词创建及作用,数据库链接Database Link

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

习惯了-想你
2016/12/21
106
0
Oracle 的同义词(synonyms)总结

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

鉴客
2011/07/12
153
0
Oracle对象下集(序列、同义词、分区表、database link)

本人所有博文纯手码,给个关注或者赞吧!博主:张晨晨QQ:1445696451欢迎随时加Q讨论技术。 一、Oracle的序列 ·序列是用来生成惟一的连续的整数的数据库对象。序列通常可以用来自动生成主键或...

张晨chat
2018/05/31
0
0
Oralce专题10之Oracle的其他数据库对象

1、Oracle的数据库对象:序列 a、什么是序列? 序列(sequence):是一种用于自动生成唯一数字的数据库对象。主要用于提供主键值。 b、怎样创建序列? 创建序列的语法格式: 示例: c、怎样使...

极客微信条
2017/12/08
0
0

没有更多内容

加载失败,请刷新页面

加载更多

黑客之道-40本书籍助你快速入门黑客技术免费下载

场景 黑客是一个中文词语,皆源自英文hacker,随着灰鸽子的出现,灰鸽子成为了很多假借黑客名义控制他人电脑的黑客技术,于是出现了“骇客”与"黑客"分家。2012年电影频道节目中心出品的电影...

badaoliumang
6分钟前
1
0
很遗憾,没有一篇文章能讲清楚线程的生命周期!

(手机横屏看源码更方便) 注:java源码分析部分如无特殊说明均基于 java8 版本。 简介 大家都知道线程是有生命周期,但是彤哥可以认真负责地告诉你网上几乎没有一篇文章讲得是完全正确的。 ...

彤哥读源码
34分钟前
2
0
jquery--DOM操作基础

本文转载于:专业的前端网站➭jquery--DOM操作基础 元素的访问 元素属性操作 获取:attr(name);$("#my").attr("src"); 设置:attr(name,value);$("#myImg").attr("src","images/1.jpg"); ......

前端老手
今天
4
0
Django的ChoiceField和MultipleChoiceField错误提示,选择一个有效的选项

在表单验证时提示错误:选择一个有效的选项 例如有这样一个表单: class ProductForm(Form): category = fields.MultipleChoiceField( widget=widgets.SelectMultiple(), ...

编程老陆
今天
5
0
Vue核心概念及特性 (一)

Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架。 > 特点: 易用,灵活,高效,渐进式框架。 > 可以随意组合需要用到的模块 vue + components + vue-router + vuex + v...

前端优选
今天
11
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部