JDK1.8使用哪个sqljdbc驱动?

FalseIO 2018-12-13 11:19:16
连接SQL Server 2008 R2 试过各种,4 42 仍然都是报错 连接不上。。驱动程序无法通过使用安全套接字层<SSL>加密与SQL server建立安全连接。
...全文
3081 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复

请问楼主现在解决了吗

浪费七年时间 2019-05-08
  • 打赏
  • 举报
回复
引用 3 楼 sunyan122600 的回复:
楼主这个问题解决了,我也遇到了相同的问题,不知你是如何解决的
SQL Server JDBC如果是随便找地方下载的话容易出问题,貌似是因为6.1开源之前名称比较混乱,6.0和4.2的sqljdbc42.jar、sqljdbc41.jar,后面的42、41是JDBC版本,但再往前到sqljdbc41的时候,这个41又代表驱动版本4.1了,要判断驱动版本只能连接后判断:

Connection conn = DriverManager.getConnection("jdbc:sqlserver://<server>;user=<user>;password=<password>;");
System.out.println("Driver version: " + conn.getMetaData().getDriverVersion());
现在的话用官网统一的Microsoft JDBC Driver For SQL Server就行,选择符合自己JDK的(比如jdk8就用名字里有jre8的),参考"JDBC驱动程序概述"这部分。实在不知道怎么选就用最新的,支持SQL Server 2017、SQL Server 2016、SQL Server 2014、SQL Server 2012、SQL Server 2008 R2、SQL Server 2008 和 Azure SQL Database

<dependency>
    <groupId>com.microsoft.sqlserver</groupId>
    <artifactId>mssql-jdbc</artifactId>
    <version>7.2.2.jre8</version>
</dependency>
https://docs.microsoft.com/zh-cn/sql/connect/jdbc/overview-of-the-jdbc-driver?view=sql-server-2017 如果还有错误的话应该就不是驱动的问题了
sunyan122600 2019-05-07
  • 打赏
  • 举报
回复 3
楼主这个问题解决了,我也遇到了相同的问题,不知你是如何解决的
FalseIO 2018-12-19
  • 打赏
  • 举报
回复
SQL server 2008 , 按照网上指示:JDK1.7使用sqljdbc4.jar驱动包 JDK1.8 使用sqljdbc42.jar驱动包 (1.8使用了各种版本 6 7 .目前都没能解决,使用了单独打包一个1.7在运行);诡异的是 1.7能连上 1.8就连不上了 .提示 :驱动程序无法通过使用安全套接字层<SSL>加密与SQL server建立安全连接。应该是数据库问题!
oldmee 2018-12-14
  • 打赏
  • 举报
回复 1
你搞错概念了,驱动版本跟java没啥关系,跟数据库版本才有关系。 我是用MySQL的数据库,之前用的MySQL5,后来改成了MySQL8,这个升级带来了一个问题,就是新版本的MySQL8中需要指明是否进行SSL连接,默认是使用SSL连接,所以连不上,在连接语句url上加上一个申明即可:useSSL=false,加在url后面,就是告诉系统不使用ssl连接。

23,404

社区成员

发帖
与我相关
我的任务
社区描述
Java 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧