Java链接失败java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配

Java使用ODBC桥方式时候,连接Microsoft Access数据库出现

“链接失败java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配

Java链接失败java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配_第1张图片

尝试了好多遍问题都是没有解决。

问题原因其实很简单,通俗一点说就是你安装的office 办公软件版本和电脑系统类型不匹配而已。

本人电脑是64位操作系统。

Java链接失败java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配_第2张图片

而我安装的是office 版本的32位(tips:office 查看版本信息方法:文件→帮助→关于Microsoft *** 即可查看, office 2007没有32位和64位之分)

Java链接失败java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配_第3张图片

所以,在建立ODBC数据源的时候也找不到Microsoft Access Driver (*.mdb)驱动程序。

Java链接失败java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配_第4张图片


所以,要么找换一台32位操作系统的,或者安装64位版本的office。

下面,我就用第二种方法安装64位版本的office吧(安装方法自行解决)

安装完office之后,我们查看一下office版本位数是多少

Java链接失败java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配_第5张图片

然后,我们再建立ODBC数据源

开始(菜单)---控制面板---管理工具----数据源(ODBC),如图所示:

Java链接失败java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配_第6张图片

选择“添加”

Java链接失败java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配_第7张图片

现在我们可以看到我们需要建立的 Microsoft Access Driver (*.mdb) 

Java链接失败java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配_第8张图片

我们还要在 Microsoft Access 建立一个数据文件 Database1.accdb或者Database1.mdb,不然会报错

链接失败java.sql.SQLException: No data found

Java链接失败java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配_第9张图片

新建的Database1.accdb

Java链接失败java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配_第10张图片

在新建的access数据源里,“选择”然后找到新建的Database1.accdb所在目录,选择数据库文件Database1.accdb

Java链接失败java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配_第11张图片

选择完成后的数据源

Java链接失败java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配_第12张图片

“确定”之后,在ODBC 数据源管理器显示有创建的access

Java链接失败java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配_第13张图片

数据库创建完成,问题也就能解决了

然后再运行程序看看

Java链接失败java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配_第14张图片

已经成功连接到数据库!




本人小白,有什么不对的地方请各位大神多多指出。有更好的解决方法,也希望跟大神一起共同探讨!



你可能感兴趣的:(Java)