使用eclipse连接2019版SqlServer数据库的步骤及遇到的问题解决方法

本文详细介绍了如何配置Eclipse连接SQLServer2019,包括JDK、JDBC驱动、数据库设置等步骤,并解决了因驱动版本不兼容导致的SSL连接错误问题。提供了一种降低JDBC驱动版本来实现成功连接的方法。
摘要由CSDN通过智能技术生成

软件的版本:

eclipse版本为2022.6

SqlServer版本为2019

JDBC为8.2版

jdk版本为1.8版

前期准备SqlServer设置:

(1)通过Windows身份进入SqlServer数据库,鼠标右键点击数据库——>属性

(2) 安全性——>勾选SqlServer和Windows身份验证模式——>失败和成功的登录——>点击确定

 (3)安全性——>登录名sa——>右键之后点击属性

(4)状态——>授予——>启用


 PS:每一步弄完都要点击确定,最后还要重启数据库。

(5)打开 SqlServer配置管理器,将TCP和Nameed状态全部启用。

 

 (6)双击TCP,将IP1、IP10,TCP端口设置为1433,全部启用。

 配置完测试一哈,看能不能登录SqlServer。

  1. 安装好JDK(傻瓜式安装,直接点下一步直接安装就可以了)安装完成之后,可以通过DOS界面判断是否安装成功。按住(Windows+R)然后输入cmd 点击确定

输入java -version 显示如下的内容表示JDK安装成功

 2.将eclipse自带的jre切换成自己安装的jre

step1

 step2

step3 preferences——>Java——>installed JREs

step4:点击and之后弹出来的页面,选择Standard VM 点击next

 step5:directory——>finish

 我jre已经切换了,只是演示一哈而已 。PS:应该是jdk.1.8.0_341里面的jre哈(我这里安装jdk的时候使用的默认安装路径)

step6:将系统默认jre选中点击Remove删除,然后再将我们自己添加的jre选中。

 step7:新建一个Java项目 ,选择use a project specific JRE为我们安装的jre版本

 step8:再创一个类,用于测试是否连接成功,现在还没有引入JDBC驱动器,还不能连接数据库。

测试代码:

package test3;

	import java.sql.*;

	public class T {

	 public static void main(String [] args)
	 {
	  String driverName="com.microsoft.sqlserver.jdbc.SQLServerDriver";
	  String dbURL="jdbc:sqlserver://localhost:1433;DatabaseName=xs";  // school为数据库名,此处填写你的数据库名

	  String userName="sa";   // 填写你的登录账户名名,我的是sa
	  String userPwd="20010223";   // 填写你的密码
	  try
	  {
	   Class.forName(driverName);
	   Connection dbConn=DriverManager.getConnection(dbURL,userName,userPwd);
	    System.out.println("连接数据库成功");
	  }
	  catch(Exception e)
	  {
	   e.printStackTrace();
	   System.out.print("连接失败");
	  }
	 }
}

 step9:引入JDBC驱动器。鼠标右键src——>点击Prorerties。将下载好的JDBC复制到JDK安装目录下

 点击add external JREs 选择JDBC 点击确定就好啦。

完成之后的结果示意图:

 成功引入的结果示意图:

 

 现在可以输入上面给出的测试代码运行试试:

 遇到的问题:

com.microsoft.sqlserver.jdbc.SQLServerException: 驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接。错误:“sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target”。 ClientConnectionId:f40d8661-b0d3-438c-9077-7475cd35d616

        可能是因为使用的JDBC驱动版本太高,原本使用的是msscl-idbc-11.2.0.jre8.jar,但一直报上述错误,网上搜了很多方法,删除java.security里面的3DES_EDE_CBC字符等,均未解决,然后看到有人说原因可能是高端本的驱动可能不太兼容较低的sql server,尝试换了一个低版本的驱动后,程序可以正常连接数据库了。

我对JDK中的java.security文件经过了更改。将3DES_EDE_CBC删除了

删之前:

#jdk.tls.disabledAlgorithms=SSLv3, TLSv1, TLSv1.1, RC4, DES, MD5withRSA, \
 #   DH keySize < 1024, EC keySize < 224, 3DES_EDE_CBC, anon, NULL, \
 #   include jdk.disabled.namedCurves

删之后:

jdk.tls.disabledAlgorithms=SSLv3,  TLSv1, TLSv1.1,  RC4, DES, MD5withRSA, \
    DH keySize < 1024, EC keySize < 224, anon, NULL, \
    include jdk.disabled.namedCurves

 这个我不知道有没有用哈哈哈。

软件全部下载路径:

链接:https://pan.baidu.com/s/1OoFGjwRdJU1gJPx7MEKZhA
提取码:twb1

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值