2013-06-05 111 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

相关问题