Java连接Microsoft SQL Server 2005
连接步骤
一.下载驱动程序Microsoft SQL Server 2005 JDBC Driver 。(版本自选,但需支持你eclipse上JRE的版本)
解压后会得到一个JDBC Driver.exe文件,运行后,然后进一步解压(unzip),位置自定,一般存放c:\program file文件夹,后面也用此路径演示。
二.运行eclipse,根据实际需求,将sqljdbc.jar或sqljdbc4.jar导入JRE系统库。然后编写代码检验是否成功连接数据库。
1.将sqljdbc.jar或sqljdbc.jar导入JRE系统库。
打开Eclipse,然后执行如下:
“窗口”→“首选项”→“Java”→“已安装的 JRE”,选择已安装的 JRE,点击“编辑”→“添加外部”,选择c:\program file\sqljdbc\chs\sqljdbc.jar或sqljdbc4.jar。
2.打开一个已建的或新建一个项目,先查看其JRE系统库是否成功导入sqljdbc4.jar。若成功,即可编写代码检测java是否成功连接数据库。
import java.sql.*;
public class Test {
public static void main(String[] srg) {
String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; //加载JDBC驱动
String dbURL = "jdbc:sqlserver://localhost:1433; DatabaseName=test"; //连接服务器和数据库test
String userName = "sa"; //默认用户名
String userPwd = "123456"; //用户密码
Connection dbConn;
try {
Class.forName(driverName);
dbConn = DriverManager.getConnection(dbURL,userName, userPwd);
System.out.println("Connection Successful!"); //如果连接成功 控制台输出Connection Successful!
} catch (Exception e) {
e.printStackTrace();
}
}
}
常见问题
一.测试代码报错,显示:此驱动程序不支持 Java Runtime Environment (JRE)1.6 版。请使用支持 JDBC 4.0 的 sqljdbc4.jar 类库。
原因:导入的是sqljdbc.jar。(sqljdbc.jar只支持JDBC3.0,而sqljdbc4.jar支持JDBC4.0)
解决办法:要先移除已导入的sqljdbc.jar,然后导入sqljdbc4.jar。注意,sqljdbc.jar和sqljdbc4.jar两者只能导入一个,并且,相同的.sqljdbc.jar或sqljdbc4.jar,不是导入的版本越多越好。当需要某个jar文件时,应用程序不会每次都将JRE系统库内的所有jar文件遍历一次,如果首先读取的jar版本不支持你的JRE系统库版本,即便你的JRE系统库中还有正确的jar版本,应用程序依然会显示上述错误。
二.测试代码报错,显示:“无法找到类”。
原因:没有设置环境变量。因为JDBC 驱动程序并未包含在 Java SDK 中。因此,如果要使用该驱动程序,必须将 classpath 设置为包含 sqljdbc.jar 文件。
解决办法:编辑CLASSPATH,将它的值设为:“.;c:\program file\sqljdbc\chs\sqljdbc.jar”
三.测试代码报错,显示:通过端口 1433 连接到主机 localhost 的 TCP/IP 连接失败。错误:“Connection refused: connect。请验证连接属性,并检查 SQL Server 的实例正在主机上运行,且在此端口接受 TCP/IP 连接,还要确保防火墙没有阻止到此端口的 TCP 连接。”。
原因:没有启动SQL Server (MSSQLSERVER)服务。
解决办法:在服务中启动该服务。
四.测试代码报错,显示: 用户 'sa' 登录失败。该用户与可信 SQL Server 连接无关联。
原因:服务器身份认证没有设为:SQL server和windows身份验证。
解决办法:以“windows身份验证”登录服务器,然后在打开的“对象资源管理器”中,右击该服务器,打开“属性”,然后打开“安全性”,将服务器验证设为“SQL server和windows身份验证”,单击确定。重启SQL Server (MSSQLSERVER)服务方能生效。
五.以Sql server身份登录时,忘记用户密码,怎么办?
解决办法:以windows身份登录服务器,在“对象资源管理器”中,打开“安全性”下的“登录名”,展开后,双击对应的用户名,然后即可修改密码,最后保存。