No suitable driver found for jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};
来源:互联网 发布:如何注册手机淘宝账号 编辑:程序博客网 时间:2024/05/16 00:39
出现这个异常的原因在于从JDK1.8开始,Oracle删除了jdbc-odbc桥,如果你要使用jdbc-odbc桥,那么请下载jdk1.7或者更低版本
近期笔者经常收到百度知道的消息,都是关于这个的一些评论,所以发一篇再博文说明下。
官网对jdbc-odbc驱动的说明:http://docs.oracle.com/javase/7/docs/technotes/guides/jdbc/bridge.html
JDBC-ODBC Bridge
The JDBC-ODBC Bridge allows applications written in the Java programming language to use the JDBC API with many existing ODBC drivers. The Bridge is itself a driver based on JDBC technology ("JDBC driver") that is defined in the classsun.jdbc.odbc.JdbcOdbcDriver. The Bridge defines the JDBC sub-protocol odbc.
Status of the JDBC-ODBC Bridge
The JDBC-ODBC Bridge should be considered a transitional solution; it will be removed in JDK 8. In addition, Oracle does not support the JDBC-ODBC Bridge. Oracle recommends that you use JDBC drivers provided by the vendor of your database instead of the JDBC-ODBC Bridge.
Why use ODBC at all?
The ideal is "Pure Java": no native code, no platform dependentfeatures. But you may need to begin your development effort rightaway, without waiting for your DBMS to offer a Java-only JDBCdriver. Partly native drivers, such as the JDBC-ODBC Bridge, letyou create programs that easily adapt to Pure Java drivers as theybecome available.
早期的时候java刚诞生没多久,jdbc还不是很成熟,为了保持对微软的驱动兼容使用了jdbc-odbc最为过渡,现在,jdbc已经可以独挡一面了,所以oracle/sun删除了这个驱动,这很正常。但是由于大多数教材的编者并没有与时俱进,操作数据库的第一个例子在jdk1.7的时候仍然是jdbc-odbc......,大部分编者认为配置微软的东西比配置mysql简单,实际上对初学者来说基本没有什么区别。
Oracle/sun还说了,以sun开头的包以后有废弃的风险,如果项目以后要更新的话,建议还是尽量避开这些包
--------------------------------------------------------------------------------jdk-----------------------------------------------------------------------
我电脑上安装了jdk8和jdk7。
我环境变量设置的jdk7,但是在CMD中输入java -version 显示的一直是jdk8
删除:
c:/windows/system32/java.exe
c:/windows/system32/javaw.exe
c:/windows/system32/javaws.exe
直接删除后,在CMD中就正常了
---------------------------------java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序-------------------------
在Win7 64位系统下,使用Java+Access数据库编程,用Java连数据库时,出现错误提示,如下:
Java java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序
网络上有很多类似错误的解决办法,其中之一就是:
url = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=D:\\abc.mdb";
注意:Driver 和 (*.mdb) 之间要有空格,而且=左右不能有空格,正确写法为:
url = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=D:\\abc.mdb";
当然,此次的问题不是这个原因,原因是,系统默认下只安装了32位的Access驱动,在64位下不支持,解决办法是,下载64位的Access数据库引擎驱动,下载地址:
http://www.microsoft.com/zh-cn/download/details.aspx?id=13255
http://download.microsoft.com/download/E/4/2/E4220252-5FAE-4F0A-B1B9-0B48B5FBCCF9/AccessDatabaseEngine_X64.exe
---补充一点,当你卸载完office 然后装了上述的access64位驱动,接着可以再装你之前的office32 可以装成功。
-----关于access odbc配置
http://www.jb51.net/article/37344.htm
- No suitable driver found for jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};
- no suitable driver found for jdbc:mysql
- No suitable driver found for jdbc
- tigase : No suitable driver found for jdbc
- No suitable driver found for jdbc:XXX
- No suitable driver found for jdbc:mysql
- No suitable driver found for jdbc
- No suitable driver found for jdbc
- No suitable driver found for jdbc
- java.sql.SQLException: No suitable driver found for jdbc:microsoft:sqlserver://127.0.0.1:1433;解决
- Hibernate插件出现错误 java.sql.SQLException: No suitable driver found for jdbc:microsoft:sqlserver
- JAVA No suitable driver found for jdbc:microsoft:sqlserver://localhost:1433/xxxxxx 解决办法
- java.sql.SQLException: No suitable driver found for jdbc:microsoft:sqlserver://127.0.0.1:1433
- No suitable driver found for jdbc:mysql://localhost:3306/ 问题
- No suitable driver found for jdbc:mysql://local...
- No Suitable Driver Found For Jdbc错误解决
- No suitable driver found for jdbc:mysql:URL
- JDev: jdeveloper no suitable driver found for jdbc mysql
- 数组中得到最大值与最小值
- Android Studio SDK 更新方法
- Error:Program "sh" not found in PATH
- Gerrit 2.12.x无法view diff
- 欢迎使用CSDN-markdown编辑器
- No suitable driver found for jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};
- 基于C++和JavaScript的全平台全栈式游戏开发解决方案的思考
- OC_10_KVC
- OkHttp完全解析
- js笔记--应用与实践
- 根据两点经纬度计算距离
- Spring Security教程第四部分-自定义登录页面
- Hive on Spark源码分析(一)—— SparkTask
- 关于跨域问题和安全性的一点理解