如何解决 “在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配””



JAVA大作业,要用JAVA连上ACCESS的数据库,运行后出现“[Microsoft][ODBC 驱动程序管理器] 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配”的情况。
找到了解决方案,总之都是32位和64为系统的问题,在这里分享。
首先先介绍一些基本的利用ODBC连接数据库的操作。

1.由于我的系统是64为,office装的也是64位(这个是主要原因),所以不能用控制面板->管理工具->ODBC32.exe这种传统方式来增加数据源。
解决方法:打开C:\Windows\SysWOW64 地址下的ODBCAD32.exe来进行增加数据源。



2.java代码,连接数据库。

public class TestAccessDB {
	private Connection conn; 
	private String url = "jdbc:odbc:myAccess"; // 指定连接数据库的URL
	private String user = "sa"; // 指定连接数据库的用户名
	private String passWord = "123"; // 指定连接数据库的密码
	
	public void getConnection(){
		try {
			// 加载数据库驱动
			Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
			conn = DriverManager.getConnection(url, user, passWord);// 创建数据库连接
			if (conn != null) { // 如果Connection实例不为空
				System.out.println("数据库连接成功"); // 提示信息
			}
		} catch (Exception ex) {
			System.out.println("ERROR: " + ex.getMessage());
		}
	}
}

3.这时候运行,就会出现标题的问题了。

由于我的ODBC是ODBCAD32.exe,为了符合他的32位,我们的JAVAJDK和eclipes也应该是32位。

卸载64位的eclipes和JDK后,安装32位的。

32位eclipes地址:点击打开链接

32位的jdk地址:点击打开链接

我都试过,安装并且配置完环境就成功啦!!!



  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值