🎈 作者:Linux猿
目录
一、下载驱动
二、Eclipse 中添加驱动
三、连接 SQL Server
四、遇到的问题
五、参考链接
本篇文章讲解 Eclipse 连接 SQL Server 数据库的步骤以及安装过程中遇到的问题,本篇文章假设你已安装完 Eclipse 和 SQL Server。
一、下载驱动
通过 Java 连接 SQL Server 需要使用 SQL Server 的驱动,驱动下载地址如下所示。
选择「中文简体」,如下所示。
点击下载后,选择 sqlijdbc_6.0.8112.200_chs.exe,然后点击 Next 即可下载驱动。
下载后解压,在 sqljdbc_6.0/chs/jre8 目录下 sqljdbc42.jar 文件就是连接所需的驱动。
二、Eclipse 中添加驱动
在 Eclipse 中创建一个 Java 项目,项目上右键选择 Build Path -> Configure Build Path,配置如下所示。
三、连接 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连接失败!");
}
}
}
连接成功后,输出信息如下所示。
四、遇到的问题
(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 包,如下所示。