国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > Oracle > 正文

oracle跨庫查詢dblink的用法實例詳解

2020-07-26 14:14:17
字體:
來源:轉載
供稿:網友

本文實例講述了oracle跨庫查詢dblink的用法。分享給大家供大家參考,具體如下:

1.創建之前的工作

在創建dblink之前,首先要查看用戶是否有相應的權限。針對特定的用戶,使用 sqlplus user/pwd登錄后,執行如下語句:

復制代碼 代碼如下:
select * from user_sys_privs t where t.privilege like upper('%link%');

在sys用戶下,顯示結果為:

SYS CREATE DATABASE LINK NO
SYS DROP PUBLIC DATABASE LINK NO
SYS CREATE PUBLIC DATABASE LINK NO

可以看出在數據庫中dblink有三種權限:

CREATE DATABASE LINK--所創建的dblink只能是創建者能使用,別的用戶使用不了
CREATE PUBLIC DATABASE LINK--public表示所創建的dblink所有用戶都可以使用
DROP PUBLIC DATABASE LINK--刪除指定dblink

如果想要改變某個用戶的權限,需要在sys用戶下修改:

復制代碼 代碼如下:
grant CREATE PUBLIC DATABASE LINK,DROP PUBLIC DATABASE LINK to scott;

查看dblink,有兩種方式,分別如下:

①.

復制代碼 代碼如下:
select owner,object_name from dba_objects where object_type='DATABASE LINK';

②.
復制代碼 代碼如下:
select * from dba_db_links;

2. 創建dblink

create public database link LINK_NAMEconnect to USRNAME identified by "PASSWORD"using '(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = XXX.XXX.XXX.XXX)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = XXX)) )';

注意:using后跟的是一個字符串,其中一定不要出現不必要的空格,否則會出錯ORA-12514,在上面的代碼中為了方便閱讀其中進行了換行,可能會出現空格而導致錯誤,所以使用的時候將空格去掉就ok了。

這里LINK_NAM為自定的名稱;USERNAME和PASSWORD為指定的oracle數據庫中的用戶名和密碼,SERVICE_NAME如果不確定的話,可以通過以下語句獲得:

復制代碼 代碼如下:
show parameter service_names;

或者
復制代碼 代碼如下:
select name,value from v$parameter where name='service_names'

3.dblink的使用

dblink的使用相對比較簡單,把一般訪問本地表時的表名改為如下格式即可:[user.]table@link_name。

復制代碼 代碼如下:
select studentid from abc.studeng@abc_ten;

4.刪除dblink

確定要刪除的dblink名字以后,可以通過drop命令直接將其刪除:

復制代碼 代碼如下:
drop public database link abc_ten;

希望本文所述對大家Oracle數據庫程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 崇阳县| 林甸县| 瓦房店市| 阳城县| 客服| 阆中市| 衡南县| 岳阳县| 建湖县| 新安县| 石屏县| 左云县| 盐山县| 邹城市| 蓬莱市| 罗源县| 临泽县| 钟祥市| 洪洞县| 丰台区| 临湘市| 叶城县| 疏附县| 来凤县| 滨海县| 高台县| 台南市| 新沂市| 巨野县| 田阳县| 湛江市| 柳江县| 英山县| 吉安市| 邳州市| 楚雄市| 芜湖县| 剑川县| 通江县| 长葛市| 曲麻莱县|