ORACLE數據庫的DBLINK問題

當用戶要跨本地數據庫,訪問另一個數據庫表中的數據時,本地數據庫中必須建立了遠程數據庫的dblink,經過dblink本地數據庫能夠像訪問本地數據庫同樣訪問遠程數據庫表中的數據。下面講介紹我以前項目中如何在本地數據庫中建立dblink。sql

本地數據庫創建數據庫連接"DBLINK_OUT"數據庫

CREATE DATABASE LINK "DBLINK_OUT"
   CONNECT TO "REMOTE_DB" IDENTIFIED BY VALUES 'REMOTE_DB_PASS'
   USING '(DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = XX.XX.XX.43)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )'服務器

遠程數據庫創建數據庫連接"DBLINK_IN"class

CREATE DATABASE LINK "DBLINK_IN"
   CONNECT TO "LOCAL_DB" IDENTIFIED BY VALUES 'LOCAL_DB_PASS'
   USING '(DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = XX.XX.XX.142)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )'test

查詢、刪除和插入數據和操做本地的數據庫是同樣的,只不過表名須要寫成「表名@dblink服務器」而已。登錄

例如:若是想在本地數據庫中經過dblink訪問遠程數據庫'orcl'中REMOTE_DB.tb_test表,sql語句以下所示:object

select * from REMOTE_DB.tb_test@DBLINK_OUT;select

DBLINK其餘相關的知識:sql語句

一、查看全部的數據庫連接,登陸管理員查看數據

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

2.刪除數據庫鏈接

drop database link DBLINK_OUT;

相關文章
相關標籤/搜索