2012-06-20 42 views
0

我在同一臺服務器上有兩個數據庫。在一個查詢中使用兩個具有不同屬性的數據庫

我想在用戶搜索任何字詞時顯示來自兩個不同數據庫的單個結果! 我們該如何做到這一點?我正在使用JSP

+0

好,首先你需要提供兩個數據庫連接,或者在他們中的一個,包括其他的數據有一個單一視圖D B。你真的需要提供一些更多的信息和你迄今爲止所嘗試/想到的。 –

+1

這個鏈接可以幫助你 - > http://stackoverflow.com/questions/1183341/connect-multiple-tables-in-different-databases-mysql –

回答

3

您不需要連接兩個數據庫。讓我解釋一下......

我們有兩個數據庫DB_1和DB_2,都有表DB_1.Table1和 DB_2.Table2。

假設DB_1有更多的表使用在這裏,您只需要在DB_2的表2上提供GRANT到DB_1。或者您可以爲DB_2的所有表提供授權(根據您的需要)。這是Oracle的行爲方式。如果您的數據庫服務器不支持相同的操作,只需將權限(GRANT)賦予DB_1的用戶使用多個不同數據庫的表。

和查詢的樣子..

Select t1.id, t1.name,t2.id, t2.name t2 from DB_1.Table1 t1, DB_2.Table2 t2 where... 

而當你寫

我想從兩個不同的數據庫顯示一個結果,當用戶搜索任何條款!

您的查詢就會..

Select t1.id, t1.name from DB_1.Table1 t1 where... 
Union All 
Select t2.id, t2.name from DB_2.Table2 t2 where... 
相關問題