本文章旨在介绍如何使用最新jdbc连接sqlserver2005数据库
一、下载安装
1、sqlserver 2005 express edition
下载:[url]http://msdn.microsoft.com/vstudio/express/sql/download/[/url]
安装完数据库后设置icp/ip协议启动,具体如下:
(1)打开sql server configuration manager
(2)转到sql server 2005 network configuration->protocols for sqlexpress
(3)将tcp/ip设置为enabled(启用)
(4)双击tcp/ip项,转到ip addresses页
(5)ip all中设置tcp port为1433
(6)重新启动服务
2、sqlserver2005数据库jdbc驱动
下载:[url]http://download.microsoft.com/download/d/2/e/d2e1ffb6-2cfa-4a62-a22d-a413cce93118/download_sql_jdbc_driver.htm[/url]
安装或者解压,取得sqljdbc.jar文件,该文件即为jdbc驱动。将sqljdbc.jar放到classpath。(web application中放在web-inf/lib下)
二、连接数据库sqlserver2005的java代码
1、在tempdb中创建测试数据表格
use tempdb
create table dbo.table_1
(
id bigint not null,
name varchar(20) not null,
email varchar(50) null
) on [primary]
2、测试使用数据库连接
下面代码创建了一个连接到数据库的连接,及使用连接操作数据库。
/*
* 创建日期 2006-6-1
*/
package cn.afss.common.web.test;
import java.sql.connection;
import java.sql.drivermanager;
import java.sql.resultset;
import java.sql.sqlexception;
import java.sql.statement;
import org.apache.log4j.logger;
/**
* @author amei
* amei's freesky studio
*/
public class testconnsql2k5bean {
/**
* log4j logger for this class
*/
private static final logger logger =
logger.getlogger(testconnsql2k5bean.class);
private connection conn = null;
public testconnsql2k5bean() {
super();
}
public void getconnection() {
try {
class
.forname(com.microsoft.sqlserver.jdbc.sqlserverdriver)
.newinstance();
string url = jdbc:sqlserver://localhost:1433;databasename=tempdb;
string user = sa; // 根据你自己设置的数据库连接用户进行设置
string password = sa; // 根据你自己设置的数据库连接密码进行设置
conn = drivermanager.getconnection(url, user, password);
} catch (java.lang.classnotfoundexception ce) {
logger.error(get connection error:, ce);
} catch (java.sql.sqlexception se) {
logger.error(get connection error:, se);
} catch (exception e) {
logger.error(get connection error:, e);
}
}
public void testconnection() {
if (conn == null)
this.getconnection();
try {
string sql = select * from table_1;
statement stmt = conn.createstatement();
resultset rs = stmt.executequery(sql);
while (rs.next()) {
logger.debug(rs.getstring(id));
logger.debug(rs.getstring(name));
logger.debug(rs.getstring(email));
}
rs.close();
stmt.close();
} catch (sqlexception e) {
logger.error(e.getmessage(), e);
} finally {
if (conn != null)
try {
conn.close();
} catch (sqlexception e) {
}
}
}
public static void main(string[] args) {
testconnsql2k5bean bean = new testconnsql2k5bean();
bean.testconnection();
}
}
三、sql server2000和2005的连接代码区别
写连接代码时需要注意2000和2005的不同:
1、连接sqlserver2000
class.forname(com.microsoft.jdbc.sqlserver.sqlserverdriver).newinstance();
url = jdbc:microsoft:sqlserver://localhost:1433;databasename=tempdb;
2、连接sqlserver2005
class.forname(com.microsoft.sqlserver.jdbc.sqlserverdriver).newinstance();
url = jdbc:sqlserver://localhost:1433;databasename=tempdb;
注:详细使用请参考ms jdbc中的官方文档。
结束。