Oracle DBLINK --跨库访问数据
2017-12-04 15:38
411 查看
oracle在进行跨库访问时,可以通过创建dblink实现,今天就简单的介绍下如果创建dblink,以及通过dblink完成插入、修改、删除等操作
首先了解下环境:在tnsnames.ora中配置两个数据库别名:orcl(用户名:wangyong 密码:1988)、orcl2(用户名:wangyong 密码:123456),在orcl中 创建database link来访问orcl2
第一步:赋予权限
在创建database link之前,我们需要判断,登陆的用户是否具备创建database link 的权限,所以我们执行以下的语句(用wangyong用户登陆orcl):
如果查询有返回行,则表示具备创建database link权限,否则,则需要使用sys登陆orcl为WANGYONG用户赋予创建权限
此时,再执行上面查看是否具备权限的sql语句,会发现有返回行,表示,WANGYONG这个用户已经具备创建database link的权限
第二步;创建database link
我所了解到的创建方式有两种:1)通过pl/sql developer图形化创建、2)通过sqlplus中的sql语句创建,依次来看
1)pl/sql developer 图形化创建
填写完成后点击“Apply”按钮即可创建成功。
2)sql语句创建
这样,就完成了简单database简单的创建
第三步:操作
首先,我们需要在ORCL2库中新建一张表,并插入部分数据,如下图:
现在,我们通过database link 在orcl中访问这张属于orcl2库中WANGYONG的表COMPANY
从截图中可以看到,在ORCL中可以成功访问到ORCL2中用户WANGYONG的表
下面,利用同样的方式,进行插入,修改,删除操作,依次看截图,每一次操作后均执行查询语句,可对比执行效果:
1)插入
2)修改
3)删除
至此,简单的dblink操作就可以了,对于上面的链接字符串,还可以创建同义词代替,会稍微省点事
那么上面的查询、插入、修改、删除中可直接用WYSYNONYM代替company@TESTLINK1即可,例如查询语句可改成如下方式(插入,修改,删除类似):
转载地址:https://www.cnblogs.com/wangyong/p/6354528.html
首先了解下环境:在tnsnames.ora中配置两个数据库别名:orcl(用户名:wangyong 密码:1988)、orcl2(用户名:wangyong 密码:123456),在orcl中 创建database link来访问orcl2
第一步:赋予权限
在创建database link之前,我们需要判断,登陆的用户是否具备创建database link 的权限,所以我们执行以下的语句(用wangyong用户登陆orcl):
-- 查看wangyong用户是否具备创建database link 权限 select * from user_sys_privs where privilege like upper('%DATABASE LINK%') AND USERNAME='WANGYONG';
如果查询有返回行,则表示具备创建database link权限,否则,则需要使用sys登陆orcl为WANGYONG用户赋予创建权限
-- 给wangyong用户授予创建dblink的权限 grant create public database link to wangyong;
此时,再执行上面查看是否具备权限的sql语句,会发现有返回行,表示,WANGYONG这个用户已经具备创建database link的权限
第二步;创建database link
我所了解到的创建方式有两种:1)通过pl/sql developer图形化创建、2)通过sqlplus中的sql语句创建,依次来看
1)pl/sql developer 图形化创建
填写完成后点击“Apply”按钮即可创建成功。
2)sql语句创建
-- 注意一点,如果密码是数字开头,用“”括起来 create public database link TESTLINK2 connect to WANGYONG identified by "123456" USING 'ORCL21'
这样,就完成了简单database简单的创建
第三步:操作
首先,我们需要在ORCL2库中新建一张表,并插入部分数据,如下图:
现在,我们通过database link 在orcl中访问这张属于orcl2库中WANGYONG的表COMPANY
从截图中可以看到,在ORCL中可以成功访问到ORCL2中用户WANGYONG的表
下面,利用同样的方式,进行插入,修改,删除操作,依次看截图,每一次操作后均执行查询语句,可对比执行效果:
1)插入
2)修改
3)删除
至此,简单的dblink操作就可以了,对于上面的链接字符串,还可以创建同义词代替,会稍微省点事
-- 创建同义词 create synonym TESTSYNONYM FOR company@TESTLINK1;
那么上面的查询、插入、修改、删除中可直接用WYSYNONYM代替company@TESTLINK1即可,例如查询语句可改成如下方式(插入,修改,删除类似):
-- 查询ORCL2中WANGYONG用户的表COMPANY SELECT * FROM TESTSYNONYM order by id
转载地址:https://www.cnblogs.com/wangyong/p/6354528.html
相关文章推荐
- Oracle DBLINK 简单使用 oracle在进行跨库访问时,可以通过创建dblink实现,今天就简单的介绍下如果创建dblink,以及通过dblink完成插入、修改、删除等操
- Oracle 跨域访问其他实例数据 dblink 方式
- oracle dblink跨库访问的问题
- 【转发】oracle 使用dblink访问postgresql数据库
- oracle跨库访问查询、数据获取、打印(测试【已通】)
- ORACLE使用dblink实现跨服务器访问数据
- 实现ORACLE跨库访问 DBLINK
- 多个同构数据表在不同oracle服务器访问策略初步构思
- oracle授权另外一个用户访问自己创建的数据对象
- 使用 ADO.NET 和 Oracle 进行高级数据访问 (转自)
- Oracle10g通过DBLink访问MySQL数据
- 基于Oracle OCI的数据访问C语言接口ORADBI
- Oracle索引梳理系列(一)- Oracle访问数据的方法
- asp访问oracle数据的问题
- 验证oracle决定使用索引时会使用ROWID来访问数据
- Ms SqlServer2005访问Oracle(利用DBLINK和Synonym)
- dblink访问 ORA-00997: 非法使用 LONG 数据类型
- ODP.NET 之访问 Oracle 数据库
- 在oracle中建立dblink访问其他数据库
- Oracle两个数据库互相访问,DBLink使用-转