2012-02-07 85 views
0

我的應用程序使用一個xml數據源文件來訪問數據庫。數據庫中存在多個模式,並且訪問任何模式都沒有問題。在JDBC連接中提供兩個模式名稱URL

但是我們已經開始使用BIRT進行報告和圖表生成,因此我正面臨一個非常典型的問題。

在BIRT我需要創建一個數據源文件。問題是它接受jdbc:連接url我在哪裏提供數據庫的URL ..但是隨着URL它也要求我指定模式,否則明智BIRT顯示沒有數據集中的值。 我可以很容易地指定一個模式名稱,但是我的查詢使用兩個模式,因此我無法找到同樣的選擇...創建聯合數據集是一個選項,但我的查詢很複雜,通常它不是一個可行的選項我...

我指定的連接網址是: -

的jdbc:mysql的:// IP:端口/ SCHEMANAME someString

如何指定大於2?我的jdbc連接URL中的模式..我如何連接到BIRT中的單個數據源中的兩個模式..

+0

建立兩個連接.... – 2012-02-07 14:35:29

+0

建立兩個連接對我來說不是一種選擇..它已經寫在帖子中,我想同時訪問兩個模式,因爲BIRT中的DATASET只顯示一個模式,而我的查詢涉及2-3個模式。 – AngelsandDemons 2012-02-07 14:37:00

回答

3

您正在從錯誤的方面解決此問題。 MySQL允許連接來自不同模式的表。您應該讓它知道在哪個模式下查找哪個表。您可以通過預先設定模式名稱和'。'來完成。例如:

SELECT db1.products.prod_id, db2.products.upc_code FROM db1.products LEFT JOIN db2.products ON (db1.products.prod_id=db2.products.prod_id) 

在這種情況下,您需要指定連接URL中任一模式的名稱。

+2

+1值得一提的是,無論通過連接URL訪問哪個模式都需要讀取其他模式的權限。 – 2012-02-08 08:50:39

相關問題