【问题标题】:Can't connect Java program to Access 2010 Database Using ODBC Driver无法使用 ODBC 驱动程序将 Java 程序连接到 Access 2010 数据库
【发布时间】:2012-05-16 14:09:41
【问题描述】:

所以我在这上面花了 48 小时,但我做错了!

我正在使用 64 位 BlueJ 程序编写 Java。 我正在使用 64 位 MS Windows 7 我正在尝试连接到 MS Access 2010 (x86/x64)

以下显示了我建立连接的代码:

 /** 
         * Makes connection to FIREPLACES Database.
         * 
         * @return 0 if connection to FIREPLACES database is successfully made, 
         *           otherwise returns -1 if there is a problem making a connection 
         *           to the BOOKS database.
         * 
        */
        static public int makeConnectionToFireplacesDB()
          {

              try
                {
                        // Make connection to Database
                        connectionToFireplacesDB = DriverManager.getConnection("jdbc:odbc:FIREPLACES");
                }
              catch (SQLException exception)
                {       
                        return (-1);    // Return back with -1 if there is a problem 
                                        // making a connection
                }

              return (0);   // Return back with 0 if connection is made to database

          } // end makeConnectionToBooksDB()

我要连接的访问​​文件的名称称为 FIREPLACES.mdb。

在遇到问题并在互联网上寻找解决方案后,我发现我需要通过 windows/SysWOW64/odbcad32.exe 使用 odbc 驱动程序创建连接。

我这样做了,但它仍然给了我同样的问题!

我觉得它一定是 x86/x64,所以我在不同的硬盘上安装了 x86 操作系统,但仍然是同样的问题!

下面的屏幕截图显示我尝试在 odbc 驱动程序上创建连接:

我实在想不出更多我能提供的信息了。

任何帮助真的会很棒!我因此陷入了严重的困境......

谢谢

【问题讨论】:

  • 你的意思是你的方法返回-1?如果是这样,实际打印异常而不是忽略它会很有帮助(在return -1; 之前插入exception.printStackTrace();。它将为您提供有关连接失败原因的一些信息。
  • @assylias 我是否通过返回 exception.getErrorCode() 而不是 -1 来做到这一点?我在这里很新
  • 没有 64 位 Java 的 ODBC 桥驱动程序。你运气不好。
  • @duffymo 即使使用 JDK 64 位/访问 64 位?

标签: java ms-access odbc


【解决方案1】:

对于这个问题,对我来说,答案很简单,将 32 位输入到一个分区上,然后再试一次......然后工作得很好!

【讨论】:

    猜你喜欢
    • 2018-10-04
    • 1970-01-01
    • 2019-05-08
    • 2016-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-19
    • 2015-05-30
    相关资源
    最近更新 更多