2013-06-05 155 views
0

我正在尋找一種方法,通過網絡從運行在另一臺機器上的Java應用程序訪問Windows機器上的ODBC API。這可能嗎?是否可以從Java客戶端通過網絡訪問ODBC?

的一些注意事項...

嘗試直接連接到ODBC API,並用它來在不同的機器上訪問一個數據庫服務器。這是Java客戶端 - > JDBC - > ODBC - >網絡 - >數據庫,這可以使用正常的供應商提供的驅動程序和JDBC/ODBC橋接器。

我想要做的是:Java客戶端 - > JDBC - >網絡 - > [something] - > ODBC API。

在這種情況下,也不可能在與ODBC API相同的Windows機器上直接運行Java程序。這顯然是最簡單的,但在這種情況下不起作用。

我想知道[something](和相應的JDBC驅動程序)是否存在? JDBC驅動程序是JDBC/ODBC橋的解決方案是可以接受的。

在ASCII:

Machine #1 (Linux)  Machine #2 (Windows) 
------------------  -------------------- 

Java Program 
    | 
[Some JDBC Driver] 
    | 
    \---- TCP conection -----\ 
           | 
          [something] 
           | 
          ODBC API 
           | 
          Vendor ODBC Driver 
           | 
           \---- Database 

感謝。

回答

1

你想要一個JDBC-ODBC Bridge。有一些免費和商業的。有一個來自Sun(現在是Oracle)的免費版本,可以在9 - JDBC-ODBC Bridge Driver找到,但是你會發現它只是推薦用於實驗,我聽說它將在Java 8中被刪除。有一個來自Easysoft的商業版本但它需要安裝ODBC驅動程序的計算機上安裝的服務器組件(服務)。

+0

JDBC-ODBC橋只是簡單地將ODBC API通過JDBC API提供給運行在同一臺機器上的Java應用程序。這並不能解決「網絡過度」問題的一部分。 – Archie

+0

我提到的商用JDBC-ODBC Bridge確實可以完成網絡部分。 – bohica

+0

啊,謝謝。看起來像Easysoft做什麼需要。 – Archie

相關問題