🎈 作者:Linux猿

目录

一、下载驱动

二、Eclipse 中添加驱动

三、连接 SQL Server

四、遇到的问题

五、参考链接


本篇文章讲解 Eclipse 连接 SQL Server 数据库的步骤以及安装过程中遇到的问题,本篇文章假设你已安装完 Eclipse 和 SQL Server。

一、下载驱动

通过 Java 连接 SQL Server 需要使用 SQL Server 的驱动,驱动下载地址如下所示。

SQL Server 驱动下载链接~

选择中文简体,如下所示。

freesql 连接 sqlite sql连接eclipse_Java

 点击下载后,选择 sqlijdbc_6.0.8112.200_chs.exe,然后点击 Next 即可下载驱动。

freesql 连接 sqlite sql连接eclipse_freesql 连接 sqlite_02

 下载后解压,在 sqljdbc_6.0/chs/jre8 目录下 sqljdbc42.jar 文件就是连接所需的驱动。

二、Eclipse 中添加驱动

在 Eclipse 中创建一个 Java 项目,项目上右键选择 Build Path -> Configure Build Path,配置如下所示。

freesql 连接 sqlite sql连接eclipse_eclipse_03

三、连接 SQL Server

Java 连接数据库代码如下所示。

import java.sql.*;
public class testDB {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		String driverName="com.microsoft.sqlserver.jdbc.SQLServerDriver";
		String dbURL="jdbc:sqlserver://127.0.0.1:1433;DatabaseName=test";//test为你的数据库名
		String userName="sa";//你的数据库用户名
		String userPwd="123456";//你的密码
		try {
		    Class.forName(driverName);
		    System.out.println("加载驱动成功!");
		} catch (Exception e) {
		    e.printStackTrace();
		    System.out.println("加载驱动失败!");
		}
		try {
		    Connection dbConn=DriverManager.getConnection(dbURL,userName,userPwd);
		    System.out.println("连接数据库成功!");
		} catch (Exception e) {
		    e.printStackTrace();
		    System.out.print("SQL Server连接失败!");
		}
	}

}

连接成功后,输出信息如下所示。

freesql 连接 sqlite sql连接eclipse_Java_04

四、遇到的问题

(1)报错如下所示。

加载驱动成功!
Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/DatatypeConverter
	at sqljdbc42/com.microsoft.sqlserver.jdbc.SQLServerConnection.sendLogon(SQLServerConnection.java:4098)
	at sqljdbc42/com.microsoft.sqlserver.jdbc.SQLServerConnection.logon(SQLServerConnection.java:3160)
	at sqljdbc42/com.microsoft.sqlserver.jdbc.SQLServerConnection.access$100(SQLServerConnection.java:43)
	at sqljdbc42/com.microsoft.sqlserver.jdbc.SQLServerConnection$LogonCommand.doExecute(SQLServerConnection.java:3123)
	at sqljdbc42/com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:7505)
	at sqljdbc42/com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:2445)
	at sqljdbc42/com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1981)
	at sqljdbc42/com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:1628)
	at sqljdbc42/com.microsoft.sqlserver.jdbc.SQLServerConnection.connectInternal(SQLServerConnection.java:1459)
	at sqljdbc42/com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:773)
	at sqljdbc42/com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:1168)
	at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:681)
	at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:229)
	at testDB.main(testDB.java:19)
Caused by: java.lang.ClassNotFoundException: javax.xml.bind.DatatypeConverter
	at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
	at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
	... 14 more

这是因为缺少 javax.xml.bind.jar 包的原因,解决步骤如下所示。

(1)下载 javax.xml.bind.jar 包,点击下载~

(2)点击 Java 项目右键,选择 Build Path -> Configure Build Path,然后导入下载的 jar 包,如下所示。

freesql 连接 sqlite sql连接eclipse_eclipse_03