2010-07-22 58 views
1

我有一個應用程序需要爲完全相同的數據查詢兩個不同的DB2數據庫。有沒有什麼辦法可以創建一個視圖來查詢我的查詢,在兩個數據庫上執行它,合併結果並將它們發送回我的應用程序?跨2個數據庫創建DB2視圖

回答

3

是的,有點。幾年前我們不得不做類似的事情,因爲我們的一位客戶將數據分成了兩個DB2實例,但仍然希望單個查詢可以同時獲得這兩個實例(我們使用的報告工具只能連接到一個實例)。

從內存中,這是一個事:

  • 打開聯合會的支持(需要實例,以實例通信)。
  • 使用create wrapper創建包裝,因此一個DB2實例知道如何連接到另一個。
  • 使用create server註冊其他服務器。
  • 使用create user mapping設置兩個實例之間的憑證映射。
  • 使用create nickname在本地實例中爲遠程表創建別名。

從那裏,你只需創建視圖,就像這樣:

select * from localtable union all select * from nickname; 

,你應該有兩個錶行。

+0

是否需要聯邦支持,如果它的所有在一個實例?如果數據庫與另一個數據庫名稱在同一個實例上,那麼「服務器」是什麼? – madmaze 2011-03-28 23:13:11