1.1数据库创建同义词(synonym)

Oracle的同义词(synonyms)从字面上理解就是别名的意思,和视图的功能类似,就是一种映射关系。它可以节省大量的数据库空间,对不同用户的操作同一张表没有多少差别;它扩展了数据库的使用范围,能够在不同的数据库用户之间实现无缝交互;Oracle数据库中提供了同义词管理的功能。同义词是数据库对象的一个别名,经常用于简化对象访问和提高对象访问的安全性。在使用同义词时,Oracle数据库将它翻译成对应方案对象的名字。与视图类似,同义词并不占用实际存储空间,只有在数据字典中保存了同义词的定义。在Oracle数据库中的大部分数据库对象,如表、视图、物化视图、序列、函数、存储过程、包、同义词等等,数据库管理员都可以根据实际情况为他们定义同义词。创建同义词,访问不同用户下的表,不用加用户名。(意思就是取了一个公用的别名)

1.1.1在同一数据库下创建同义词(synonym)

第一步:创建新用户,以及访问不同用户下的表,必须授予以下权限

(1)   create user test_1/test_2 identified by 123;

(2)   grant resource,connect to test_1;

(3)   grant select any table to test_1;

第二步:授予创建同义词(synonym)的权限

grant create any synonym to test_1;

第三步:创建同义词,并进行访问

(1) create synonym teacher for test_2.teacher;

(2) select * from teacher;(在用户test_1中进行查询)

1.1.2在不同数据库下创建同义词(synonym)

第一步:建立DBLink

create public database link test_others_course

connect to test_others identified by "456"

using'(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.106)(PORT = 1521))

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = ORCL)

)

)';

第二步:建立同义词

create synonym course for course@test_others_course;

第三步:进行操作(在用户test_1中进行操作)

select * from course;

update course set cname='计算机导论' where tno='825';

2.1数据库创建数据库连接(DBLink)

dblink(Database Link)数据库链接顾名思义就是数据库的链接,就像电话线一样,是一个通道,当我们要跨本地数据库,访问另外一个数据库表中的数据时,本地数据库中就必须要创建远程数据库的dblink,通过dblink本地数据库可以像访问本地数据库一样访问远程数据库表中的数据。

第一步:查询用户是否具备创建DBLink的权限,并赋予权限

(1)   select * from user_sys_privs where privilege like upper('%DATABASE LINK%');

(2)   grant create public database link,drop public database link to test_1;

第二步:创建DBLink

已经配置本地服务:

create public database link test_others_course

connect to test_others identified by "456"

using'ORCL';

直接建立连接:

create public database link test_others_course

connect to test_others identified by "456"

using'(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.106)(PORT = 1521))

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = ORCL)

)

)';

第三步:查询DLink,删除DBLink

查询DLink(在dba下执行):select * from dba_db_links;

select owner,object_name from dba_objects where object_type='DATABASE LINK';

删除DBLink:drop public database link test_others_course;

第四步:执行DBLink

select * from course@test_others_course;

3.1 赋予/移除用户增、删、改、查其他用户所属表权限

3.1.1所有表

(1)grant/revoke  update any table to test_1;

(2)grant/revoke  insert any table to test_1;

(3)grant/revoke delete any table to test_1;

(4)grant/revoke select any table to test_1;

3.1.2单独表

(1)grant/revoke select on test_2.teacher to test_1;

(2)grant/revoke delete on test_2.teacher to test_1;

(3)grant/revoke insert on test_2.teacher to test_1;

(4)grant/revoke update on test_2.teacher to test_1;

3.1.3查询用户拥有权限

select * from dba_sys_privs where grantee='TEST_1';(用户名要大写)

3.1.3查询用户拥有角色

select * from dba_role_privs where grantee='TEST_1';(用户名要大写)

Oracle数据库 Synonym和DBLink的更多相关文章

  1. 在oracle数据库中创建DBLink

    涉及到两个数据库之间的访问时,可以创建datebase link来互相访问. ’创建方法: 1.通过PL/SQL客户端,找到datebase link,右键新建 输入相应信息 2.直接用命令行创建 一 ...

  2. 【代码备份】ORACLE数据库表同步DBLINK

    ---创建目标数据库连接DBLINKcreate database link testdblink connect to xxx identified by "xxx"using ...

  3. SQLSERVER 创建对Oracle数据库的DBlink以及查询使用

    1. 与针对oracle数据库一样, 在sqlserver中创建对oracle数据库的dblink 安全性上面也进行定义(貌似不需要跟访问字符串只需要填一个即可) 发现有的版本改注册表不管用 还得修改 ...

  4. Oracle数据库通过DBLINK实现远程访问

    什么是DBLINK? dblink(Database Link)数据库链接顾名思义就是数据库的链接  ,就像电话线一样,是一个通道,当我们要跨本地数据库,访问另外一个数据库表中的数据时,本地数据库中就 ...

  5. Oracle数据库如何创建DATABASE LINK?

    Oracle数据库如何创建DATABASE LINK? 2011-08-09 14:54 taowei20061122 CSDN博客  http://blog.csdn.net/taowei20061 ...

  6. Oracle数据库设计规范建议

    Oracle数据库设计规范建议 1 目的 本规范的主要目的是希望规范数据库设计,尽量提前避免由于数据库设计不当而产生的麻烦:同时好的规范,在执行的时候可以培养出好的习惯,好的习惯是软件质量的很好的保证 ...

  7. asp.net中membership使用oracle数据库(一)

    第一步 数据库的准备 使用 oracle 11g的数据库 需要安装好,安装过程中先决条件检查失败的处理:确认server服务已运行 cmd->net share c$=c: 就可以通过 orac ...

  8. 【转】oracle数据库开发的一些经验积累

    1.不安装Oracle客户连接Oracle 8的方法  请将以下文件拷贝到运行文件所在目录 一.ODBC动态库 : ctl3d32.dll msvcrt40.dll odbc16gt.dll odbc ...

  9. Oracle 数据库对象

    数据库对象是数据库的组成部分,常常用CREATE命令进行创建,可以使用ALTER命令修改,用DROP执行删除操作.前面已经接触过的数据库对象有表.用户等. 今天将学习更多的Oracle数据库对象: 同 ...

随机推荐

  1. hdu2159 FATE----完全背包

    标准完全背包板子,动态方程为dp[j][x]=max(dp[j][x],dp[j-c[i]][x-1]+a[i]); 其中,dp[j][x]表示花费j点耐心杀x个怪所能得到的最大经验值. 具体代码如下 ...

  2. java.lang.ClassNotFoundException: javax.servlet.SessionCookieConfig

    使用 MockMvc 模拟进行单元测试时出现以下的错误,网上看到的资料应该是说Spring4.0需要servlet3.0的支持? 在pom.xml更改servlet的版本依赖后即可

  3. oracle更改字符集为zhs16GBK

    PDBalter pluggable database PDBANBOB open; alter session set container=pdbanbob; ALTER SYSTEM ENABLE ...

  4. [Basics] 递归

    Recursion就是方法调用自己,递归其实和循环是非常像的,循环都可以改写成递归,递归未必能改写成循环,这是一个充分不必要的条件.

  5. vue项目使用element ui的Checkbox

    最近使用到element ui的下拉多选框Checkbox Checkbox用法可参考与于 http://element.eleme.io/#/zh-CN/component/checkbox Che ...

  6. 2019南昌网络赛G. tsy's number

    题意:\(\sum_{i=1}^n\sum_{j=1}^n\sum_{k=1}^n\frac{\phi(i)*\phi(j^2)*\phi(k^3)}{\phi(i)*\phi(j)*\phi(k)} ...

  7. Mtlab:抛物型方程的交替方向隐格式(ADI)

    tic; clear clc M=[,,,,]; N=M; :length(M) h=/M(p);% 这里定义空间步长等距 tau=/N(p); % 时间步长 x=:h:; y=:h:; t=:tau ...

  8. 浙江省住房和城乡建设厅 http://www.zjjs.com.cn/ 漏洞提示

    http://220.189.211.52/zjjsgbxx/FileAttach/96dcdf11-c45e-4455-a443-f6dea8a44e23.html 可以下载,浏览 改修,

  9. java 形式参数和实际参数的区别

    1.形参不能离开方法.形参只有在方法内才会发生作用,也只有在方法中使用,不会在方法外可见.而实参可以再程序的任何地方都使用.

  10. 接前一篇:new select option保存搜索条件

    WD_SELECT_OPTIONS_20新加了很多好玩的东西,尤其是里面的保存搜索条件和使用保存的搜索条件.因为这个比较想WEB UI,所以兴趣比较高一点,WEB UI里是把参数拼成XML存起来的,我 ...