学院网站建设成效,深圳坪山属于哪个区,滨海新网站建设,海拉尔做自己的网站前言
一句话解释DBlink是干啥用的 实现跨库访问的可能性.
通过DBlink我们可以在A数据库访问到B数据库中的所有信息,例如我们在加工FDS层表时需要访问ODS层的表,这是就需要跨库访问
一、DBlink的分类
private#xff1a;用户级别#xff0c;只有创建该dblink的用户才可以使…前言
一句话解释DBlink是干啥用的 实现跨库访问的可能性.
通过DBlink我们可以在A数据库访问到B数据库中的所有信息,例如我们在加工FDS层表时需要访问ODS层的表,这是就需要跨库访问
一、DBlink的分类
private用户级别只有创建该dblink的用户才可以使用这个dblink来访问远程的数据库同时也只有该用户可以删除这个dblink。public数据库级别本地数据库中所有的用户数据库访问权限的用户或者pl/sql程序都能使用这个dblink。global网络级别这是对于oracle network而言的。
二、DBlink的使用
1.使用前查看权限
在创建database link之前我们需要判断登陆的用户是否具备创建database link 的权限所以我们执行以下的语句(
--查看w11413用户是否具备创建database link 权限
select * from user_sys_privs
where 11
AND privilege like upper(’%DATABASE LINK%’)
AND USERNAME‘w11413’; 如果查询有返回行则表示具备创建database link权限否则则需要使用sys登陆orcl为ZHANGJK用户赋予创建权限
-- 给w11413用户授予创建dblink的权限
grant create public database link to w11413;赋权后得到该结果即可: 2.创建DBlink
pl/sql创建 View Object Browser Database links 右击New 可勾选公共public , 如果不勾选则默认当前数据库链接目标数据库 , 填写该库用户名和密码点击apply执行 sqlplus中的sql语句创建
-- 注意一点如果密码是数字开头用括起来
create public database link TESTLINK2 connect to identified by 661223 USING CHD-UT_HDORA-2113.简单的跨库使用
-- 最简单的用法
SELECT * FROM table_namedatabase_link;
-- 不想让别人知道database link名字的时候可以使用同义词包装一下
CREATE SYNONYM table_name for table_namedatabase_link;
SELECT * FROM table_name;
-- 也可以建立一个视图来封装
CREATE VIEW table_name_v AS SELECT * FROM table_namedatabase_link;
-- 删除public类型的dblink
DROP PUBLIC DATABASE LINK dblink_name;
-- 删除private类型的dblink只有创建者自己能删
DROP DATABASE LINK dblink_name;