DB2跨庫查詢表數據

原文鏈接:https://blog.csdn.net/liufuwu1/article/details/70761475

其他博客裏面提到建立數據庫聯邦,這篇文章沒提到。以後可以一個一個去嘗試一下。

1、登錄DB2數據庫後,查詢當前用戶的用戶模式(不理解爲啥原文要查詢用戶模式?)

select current schema from sysibm.sysdummy1;

或者select current schema from sysibm.dual ;


2、 創建DRDA包裝器(WRAPPER)

 CREATE WRAPPER "DRDA" ;

3、創建服務器(SERVER) 

 CREATE SERVER tempserver   
   TYPE DB2/UDB   
   VERSION 9.7  
   WRAPPER DRDA   
   AUTHORIZATION "remoteUser"  
   PASSWORD "password"  
   OPTIONS (DBNAME  'remoteDB' );  

4、創建用戶映射(分別爲兩個數據庫創建用戶映射)
CREATE USER MAPPING FOR currentDB       //currentDB是指當前用戶的schema
   SERVER tempserver  
   OPTIONS  
     (REMOTE_AUTHID  'remoteUser'  
     ,REMOTE_PASSWORD  'password'  
     );  
CREATE USER MAPPING FOR remoteDB    //remoteDB要查詢的表所在數據庫的shcema
   SERVER tempserver  
   OPTIONS  
     (REMOTE_AUTHID  'remoteUser'  
     ,REMOTE_PASSWORD  'password'  
     );  

 5、爲想要查詢的表,創建暱稱  
     CREATE NICKNAME currentDB .employee FOR tempserver.remoteUser.employee; //employee是要查詢的表名

     
 6、直接通過暱稱,查詢另一個數據庫的表數據   
     select * from currentDB .employee ;
 

後期可作參考:

https://blog.csdn.net/huryer/article/details/83383040

https://blog.csdn.net/a3470194/article/details/16980705

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章