日期:2014-05-16  浏览次数:20378 次

Jdbc连接Sql Server2000/2005

1.准备工作: 准备相关的软件(Eclipse除外,开源软件可以从官网下载)

<1>.Microsoft SQL server 2005 Express Edition

下载地址:http://download.microsoft.com/download/0/9/0/09020fab-d2c3-4a8c-b9e0-db53a7a30ae8/SQLEXPR_CHS.EXE

<2>.SQL Server Management Studio

下载地址:http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&FamilyID=c243a5ae-4bd1-4e3d-94b8-5a0f62bf7796#filelist

<3>.SQL Server 2005 driver for JDBC

下载地址:http://download.microsoft.com/download/8/B/D/8BDABAE2-B6EA-41D4-B903-7916EF3690EF/sqljdbc_1.2.2323.101_enu.exe

2.都下载完之后开始进行安装 ,前两个是属于数据库软件,正常安装即可(注意数据库登陆不要使用windows验证)

<1> 将JDBC解压缩到任意位置,比如解压到C盘program files下面,并在安装目录里找到sqljdbc.jar文件,得到其路径开始配置环境变量

在环境变量classpath 后面追加 C:\Program Files\Microsoft SQL Server2005 JDBC Driver\sqljdbc_1.2\enu\sqljdbc.jar

<2> 设置SQLEXPRESS服务器:

????a.打开SQL Server Configuration Manager -> SQLEXPRESS的协议 -> TCP/IP

????b.右键单击启动TCP/IP

????c.双击进入属性,把IP地址中的IP all中的TCP端口设置为1433

????d.重新启动SQL Server 2005服务中的SQLEXPRESS服务器

????e.关闭SQL Server Configuration Manager

<3> 打开刚刚安装好的 SQL Server Management Studio,连接SQLEXPRESS服务器, 新建数据库,起名字为sample

<4> 打开Eclipse

????a.新建工程-> java -> java project,起名为Test
??
????b.选择eclipse->窗口->首选项->java->installed JRE??编辑已经安装好的jdk,查找目录添加sqljdbc.jar

????c.右键单击目录窗口中的Test, 选择Build Path ->Configure Build Path..., 添加扩展jar文件,即把sqljdbc.jar添加到其中

<5> 编写java代码来测试连接数据库

程序代码:

?

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
/***
 * SQl Server 2005
 * 
 */
public class SqlTest {
	
	private final static String DRIVER = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; 
	
	private final static String dbURL = "jdbc:sqlserver://localhost:1433;DatabaseName=test"; 
	
	public static void main(String[] srg) {		
		// 连接服务器和数据库sample
		String userName = "portal"; 
		// 默认用户名
		String userPwd = "portal111";		
		try {
			Class.forName(DRIVER);
			Connection dbConn = DriverManager.getConnection(dbURL,userName, userPwd);			
			Statement  stat = dbConn.createStatement();
			ResultSet  result = stat.executeQuery("SELECT TOP 10 ID,USERNAME,PASSWORD FROM test.dbo.NODETESTTABLE");
			// 处理表的结构
			ResultSetMetaData rsmd = result.getMetaData();
			String[] columnName = new String[rsmd.getColumnCount()];
			for (int i = 1; i <= rsmd.getColumnCount(); i++) {
				columnName[i-1] = rsmd.getColumnName(i);
			}
			// 处理表的数据
			while(result.next()){
				String first = result.getString(1);
				String second = result.getString(2);
				String third = result.getString(3);
				System.out.println(columnName[0] + "=" + first+ " , " + columnName[1] + "=" + second + " , " + columnName[2]+"=" + third);				
			}
			result.close();
			stat.close();
			dbConn.close();
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		}catch (SQLException e) {
			e.printStackTrace();
		}		
	}
}

?

?

:

1.因为SQLexpress服务器默认是禁用的并且端口号没有配置,所以要进行重新设置

2.如果你以前用java连接sql server 2000的话就要注意了:

在sql server 2000 中加载驱动和URL路径的语句是

String driverName = "com.microsoft.