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

时间:2023-01-29 07:55:20

今天把sql server 2008 r2装了起来,64位的,然后就迫不及待地体验连接数据库的操作,编程语言是java。我一开始学了一种非常老的连接方式,使用JDBC-ODBC桥。初次使用不太熟练,所以这里把详细步骤记下来。

首先是配置ODBC数据源,打开控制面板,小图标方式查看,我看到有个

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

这个图标是好像是32位ODBC的标志,我点击启动了它,启动的却是64位的ODBC管理工具,

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

我在“用户DSN”面板下点击了“添加”按钮,弹出“创建新数据源”窗口,

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

我双击“SQL Server”,弹出下面这个窗口

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

我在“名称”一栏里填上“hp4”,在“服务器”一栏里填上“(local)”(服务器一栏可以从下拉菜单选择的,下拉列表里为空时可以填“(local)”或计算机名,计算机名可以在计算机属性里看到),然后下一步

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

来到下面这个窗口,选择“使用用户输入登录ID……”,登录名填“sa”,密码填写sa账户的密码,下一步

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

一直下一步到完成,弹出配置信息,可以测试下数据源

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

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

到这里为止,数据源配置完成了。

接下来启动Myeclipse,新建web project,给index.jsp添加sql包引用,pageEncoding设置成“utf-8”

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

在body里面添加如下代码:

<%

try{

Connection Con;

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

Con = DriverManager.getConnection("jdbc:odbc:hp4","sa","123456");

System.out.println("Step1 goes well");

}

catch(Exception e){

System.out.println("Step1 down");

e.printStackTrace();

}

%>

在MyEclipse内置浏览器中访问上面的页面,控制台输出“Step1 goes well”,表示连接成功。

JDBC-ODBC桥内置在JDK中,所以不需要另外添加驱动包,上面的代码意思是连接成功就在控制台输出“Step1 goes well”,连接出错就在控制台输出“Step1 down”。

创建数据源的过程我还存在很多疑问。

首先是启动ODBC管理器时应该启动32位还是64位?

在控制面板中点击 “管理工具”,会看到有两个ODBC管理器,

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

我在这次演示中启动的是64位,

然后就是应该在“用户DSN”面板下还是在“系统DSN”面板下新建数据源?

我之前在“系统DSN”面板下创建了两个数据源,连接时都报错了,错误信息是

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

我百度这个错误,网上说是因为32位和64位的问题,64位系统应该建立64位DSN,但我在系统DSN下建立的DSN确实是64位的,如下图,连接下面两个DSN都会报上面那个错误。

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

我在用户DSN面板下创建的DSN貌似是32位和64位都支持的,如下图的hp2、hp3、hp4

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

暂时没有其它问题了。上面两个问题懒得探讨了,很简单的控制变量法就能检查出来。

java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配的更多相关文章

  1. &lbrack;Microsoft&rsqb;&lbrack;ODBC 驱动程序管理器&rsqb; 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配

    环境:  操作系统:64位WIN7   数据库:SQL Server 2000 SP1  开发语言:J2EE 在Servlet连接数据库时出错提示:  [Microsoft][ODBC 驱动程序管理器 ...

  2. ODBC 驱动程序管理器 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配 解决方案

    程序报错如下: ---------------------------Microsoft 数据链接错误---------------------------测试连接失败,因为初始化提供程序时发生错误. ...

  3. IIS发布出现&lbrack;Microsoft&rsqb;&lbrack;ODBC 驱动程序管理器&rsqb; 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配

    一,原因是系统DSN的配置平台位数跟系统的位数不一致(PS:确认你有没有安装对应系统的驱动.本文是34位和64位驱动都安装了) 二,解决方法,我们必须在 <控制面板---管理工具>找到对应 ...

  4. 转:java&period;sql&period;SQLException&colon; &lbrack;Microsoft&rsqb;&lbrack;ODBC 驱动程序管理器&rsqb; 未发现数据源名称并且未指定默认驱动程序

    在Win7 64位系统下,使用Java+Access数据库编程,用Java连数据库时,出现错误提示,如下: Java java.sql.SQLException: [Microsoft][ODBC 驱 ...

  5. java&period;sql&period;SQLException&colon; &lbrack;Microsoft&rsqb;&lbrack;ODBC Microsoft Access Driver&rsqb; 不能使用 &&num;39&semi;&lpar;未知的&rpar;&&num;39&semi;;文件已在使用中

    最近查看程序输入的日志时发现一个java连接Access的程序时不时的抛出: java.sql.SQLException: [Microsoft][ODBC Microsoft Access Driv ...

  6. 关于 64位系统 java连接access 报错java&period;sql&period;SQLException&colon; &lbrack;Microsoft&rsqb;&lbrack;ODBC 驱动程序管理器&rsqb; 未发现数据源名称并且未指定默认驱动程序

    报错的原因是url = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=E:/公司/2000.mdb"; 这样是不行 ...

  7. java&period;sql&period;SQLException&colon; &lbrack;Microsoft&rsqb;&lbrack;ODBC 驱动程序管理器&rsqb; 未发现数据源名称而且未指定默认驱动程序解决方法

    开发程序须要登录功能 .就不想用大数据库.直接用java连接access.     在自己机器上一切正常,  url直连 和配置数据源都没有问题.  公布到windows server2008 上 , ...

  8. &quot&semi;在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配&quot&semi; 问题总结

    最近C#连接ODBC数据源时,总是提示"[Microsoft][ODBC 驱动程序管理器] 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配",百度查询之后才知道原来是 ...

  9. 【时空大数据】Access 到 Postgres 数据迁移遇到的ODBC坑----驱动程序和应用程序之间的体系结构不匹配

    1.安装Postgres10 2.安装Postgis插件 3.创建数据库 4.执行postgis脚本插件:参考https://www.cnblogs.com/defineconst/p/1064853 ...

随机推荐

  1. 高性能 TCP &amp&semi; UDP 通信框架 HP-Socket v3&period;5&period;3

    HP-Socket 是一套通用的高性能 TCP/UDP 通信框架,包含服务端组件.客户端组件和 Agent 组件,广泛适用于各种不同应用场景的 TCP/UDP 通信系统,提供 C/C++.C#.Del ...

  2. OAuth2&period;0 微博登陆网站功能的实现(一)获取用户授权及令牌 Access Token

    在登陆一些网站的时候,可以选择登陆方式为第三方登陆,例如微博登陆,以爱奇艺为例,进入首页,点击 ”登陆“,会弹出登录框: 除了本站登陆外,还可以选择其他第三方登陆,比如微博登陆.QQ 登陆.微信登陆等 ...

  3. 【stm32】时钟树解析

    有时候会突然忘了这个重要的时钟树,这里转载一个比较好的,以防忘记. STM32时钟系统 在STM32中,有五个时钟源,为HSI.HSE.LSI.LSE.PLL. ①HSI是高速内部时钟,RC振荡器,频 ...

  4. 数据库连接(Oracle&sol;sqlServer增、删、改、查)

    一.把数据库包导入项目中,并且Build path(oracle例如ojdbc6.jar;sqlServer例如sqljdbc.jar) 二.开始操作 1.普通连接: String className ...

  5. 九州动态ip的特色

    九州代理是一款高覆盖的换ip软件,范围可覆盖全国160多个城市.软件可用于游戏试玩.游戏挂机.营销.优化.文档分享.管理.问答推广.数据采集.点赞.增效回访.用户注册等.“九州代理”仅提供国内网络节点 ...

  6. 测试工具之Fiddler

    Fiddler是一款很好的抓包分析工具,里面有很多小功能,这里介绍常用功能 Fiddler下载地址: https://www.telerik.com/download/fiddler 下载完成后,直接 ...

  7. sql server 2008 express 安装的时提示&OpenCurlyDoubleQuote;重启计算机失败&quot&semi;

    sql server 2008 express 安装的时提示"重启计算机失败" 解决办法: 打开注册表编辑器(regedit.exe),在HKEY_LOCAL_MACHINE\SY ...

  8. Django模板操作

    进行加减运算 def index(request): a = request.GET['a'] b = request.GET['b'] c = int(a) + int(b) return Http ...

  9. SQL SERVER 将表字段值0和1互转的几种方法

    需求: 如果表字段的值为 0 则将其修改为1 ,如果表字段的值为 1 则将其修改为 0. 方法一 end 方法二 ) 方法三 )

  10. 0&lowbar;Simple&lowbar;&lowbar;simplePrintf

    在设备代码中使用函数 printf(),没有新的认识. ▶ 源代码 #include <stdio.h> #include <cuda_runtime.h> #include ...