Java中的ODBC连接设置

时间:2010-03-24 02:26:56

标签: java odbc

我想编写一个Java程序来自动执行ODBC数据源管理器在Windows中所做的工作。

也就是说,给定ODBC连接名称和硬盘驱动器上数据库的路径,我希望它创建连接。

我真的不知道从哪里开始。我查看了this,但它说它是针对C而我认为这不是很有帮助。如果有人能指出我正确的方向,我会很感激。

(我意识到这个问题真的很模糊,但这就是我给出的所有信息。)

7 个答案:

答案 0 :(得分:3)

问题的答案是您不需要注册的DSN。

以下是使用系统ODBC驱动程序从Java使用ODBC连接(而不是JDBC)的示例。您可以选择使用未注册的DSN,而不是编辑注册表以创建已注册的DSN,如下所示:

Driver=sun.jdbc.odbc.JdbcOdbcDriver
Source=jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=C:/Dir/DB/MyDB.mdb;

或者,使用SQL Server:

Driver=sun.jdbc.odbc.JdbcOdbcDriver
Source=jdbc:odbc:Driver={SQL Server};SERVER=127.1;DATABASE=MyDB;UID=sa;PWD=mypass

答案 1 :(得分:1)

您需要查看使用JDBC

答案 2 :(得分:1)

所有ODBC配置都在Windows注册表中或Linux中的odbc.ini(我在其他平台上没有使用过ODBC)。首先,您必须使用ODBC管理器创建此类配置,然后检查配置中保存的内容以及执行相同操作的编写程序。如果您使用Windows 32位,请检查HKEY_LOCAL_MACHINE\SOFTWARE\ODBC处的注册表。 Windows 64位对32位应用程序和64位应用程序有不同的配置(只需在注册表中查找odbc.ini字符串)。

我认为Java不是在Windows注册表中更改内容的最佳语言,但是使用Java,您可以创建.reg可以由regedit.exe导入的文本文件,或者您可以使用其他语言,如Python使用win32扩展(Active Python默认使用它)。

答案 3 :(得分:0)

答案 4 :(得分:0)

检查一下.. Java数据库连接(JDBC)支持基于ODBC的数据库并提供独立的数据库。

 Connection connection = null;
     try {
        DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
        connection = DriverManager.getConnection("connection string", "userName", "password" );
    } catch (SQLException e) {


    }   

     return connection;

答案 5 :(得分:0)

String driver ="sun.jdbc.odbc.JdbcOdbcDriver"
String url = "jdbc:odbc:Driver={Microsoft Access Text Driver (*.txt, *.csv)};DBQ=C:/CSVFolder

query = select * from myfile.csv 

答案 6 :(得分:0)

我之前从未连接过MS SQL Server。我一直使用DB2或Derby,MYSQL,并且创建连接的所有内容始终相同。这就是我必须为SQL Server做的事情。

private final String driver = "sun.jdbc.odbc.JdbcOdbcDriver";

Class.forName(driver);

url="jdbc:odbc:;DRIVER={SQL Server};SERVER="+server+","+port+";DATABASE="+dbName;
connection = DriverManager.getConnection(url,user,password);