2011-05-02 106 views
3

有誰知道一個簡單的SQL工具,它允許我做querys和整個使用JDBC/ODBC複式和不同的數據庫(Oracle,SYBASE,syqlserver,...)加入跨越多個不同數據庫的SQL查詢工具?

喜歡的東西你yould與Visual FoxPro

orclConn = SQLCONNECT({oracle database connection string}) 
SQLEXECUTE(orclConn, [SELECT ... FROM oracle_table], 'oracle_cursor') 
fbConn = SQLCONNECT({firebird database connection string}) 
SQLEXECUTE(fblConn, [SELECT ... FROM firebird_table], 'firebird_cursor') 
SELECT ... FROM oracle_cursor, firebird_cursor ON {join condition} 

我需要做的檢查進行的跨不同勢的數據庫,如「在另一個系統一個用戶密碼可用」

回答

0

您可以使用Oracle產品「數據庫網關ODBC(DG4ODBC)」。我用它來連接以透明地從Oracle訪問數據庫 - 我不記得我是否加入了,我主要將它用於ETL。

我使用的另一種方法是Groovy - http://groovy.codehaus.org/ - 它使用jdbc,使用起來非常簡單,雖然沒有聯接。

心連心

+0

與db鏈接,你可以做連接,但遺憾的是數據庫網關是serverisde ...我只有一個受限用戶...所以我不能在服務器端做這樣的事情,我們的基礎設施管理員不願意:-)和本地安裝的oracle數據庫有點矯枉過正是不是?在groovy中,你不能加入,你可以加載設置到數組中的記錄並加入它們......但是它的某種矯枉過正... – christian 2011-05-02 14:23:50

+0

@christian - 這取決於你需要多久做一次這樣 - 我使用dg4odbc for一個遷移項目。同樣在groovy中,您可以自己完成連接 - 從oracle_table中選擇其中key = var_1並從firebird_table中選擇其中key = var_1,然後查看您得到的答案是否相同 - 這取決於您的應用程序要求。 – daven11 2011-05-02 23:23:08

2

這裏是一個tutorial on how to query multiple databases和不同的技術和選項。如果數據庫不在同一臺服務器上,請查看UnityJDBC。它可以讓你寫一個SQL查詢,可以加入和比較來自不同數據庫(MySQL和PostgreSQL,甲骨文,微軟等)的數據