JDBC连接SQL Server 2005的方法
(1)关闭防火墙。
(2)配置TCP端口:开始->所有程序->MicrosoftSQLServer2005->配置工具->SQLServer配置管理器->SQLServer2005网络配置->MSSQLSERVER协议;启用“TCP/IP”;双击“TCP/IP”->“IP地址”->“IPAll”->“TCP端口”项添加默认的“1433”。
(3)外围应用配置:MicrosoftSQLServer2005->配置工具->SQLServer外围应用配置器->服务和连接的外围应用配置器->①选SQLEXPRESS->DatabaseEngine->远程连接->本地连接和远程连接->同时使用TCP/IP和namedpipes;②选SQLServerBrowser->服务->启动类型改为“自动”->应用->启动->确定。
(4)修改默认的登录验证模式(由于在安装过程中是默认按“Windows身份验证模式”方式安装,所以sa登录是被禁用的,即使将身份验证模式更改为“SQLServer和Windows身份验证模式”,sa登录仍处于禁用状态,所以需要启用sa登录帐户):①在SQLServerManagementStudio的对象资源管理器中,安全性->登录名->右击“sa”->属性->常规->将登录名sa的密码和确认密码设为强密码->状态->登录->启用->确定;②在SQLServerManagementStudio的对象资源管理器中,右击服务器->属性->安全性->服务器身份验证->选择“SQLServer和Windows身份验证模式”->确定->确定。
(5)在SQLServerManagementStudioExpress中新建一个数据库(例如“ShopSystem”,如果测试程序带有数据库文件也可不用新建而直接附加到当前SQLServer数据库服务器);在SQLServerManagementStudio的对象资源管理器中右击服务器->重新启动->是。
(6)运行下载的JDBC文件“sqljdbc_1.2.2828.100_chs.exe”,解压到“C:\ProgramFiles”文件夹中;将Classpath设置为包含sqljdbc.jar文件(也可加到系统环境变量中):在任务栏右下角右击“ApacheTomcat”图标(如果没有些图标,可先“开始->所有程序->ApacheTomcat5.0->MonitorTomcat”)->Configure...->Java->在“JavaClasspath:”项的后面新增“;C:\ProgramFiles\MicrosoftSQLServer2005JDBCDriver\sqljdbc_1.2\chs\sqljdbc.jar”,然后“StopService->StartService”重启Tomcat。
(7)将测试程序复制到计算机硬盘上的Tomcat安装目录下的“webapps/ROOT”文件夹下,并去掉所有文件的只读属性;用文本编辑器修改测试程序中sa的密码等:
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
StringstrConn="jdbc:sqlserver://localhost:1433;DatabaseName=ShopSystem";
StringstrUser="sa";
StringstrPassword="sasasa";
conn=DriverManager.getConnection(strConn,strUser,strPassword);
注意前面两行与SQLServer2000是不一样的,密码必须与(4)中设置的相同。
-----------------------------------------------------------------------------
参考:http://hi.baidu.com/ljzcome/blog/item/33e6c4fde76c651209244d28.html
JDBC连接SQLServer2005
接触Java或者JSP,难免会使用到数据库SQLServer2000/2005(我使用2005标准版[9.0.3054]测试),经过自己的搜索和研究,使用JDBC连接SQLServer成功,特此整理方法(使用Eclipse3.2)如下。
准备工作
首先,操作系统中安装好SQLServer2000/2005,如果系统中都装有2000和2005版,记得停用一个,只开一个行了。
然后,到微软网站下载MicrosoftSQLServer2005JDBCDriver1.1,也可以使用这个地址直接下载。
解压sqljdbc_1.1.1501.101_chs.exe,把sqljdbc_1.1复制到%ProgramFiles%(如果系统在C盘则为C:\ProgramFiles)。
设置Classpath
JDBC驱动程序并未包含在JavaSDK中。因此,如果要使用该驱动程序,必须将classpath设置为包含sqljdbc.jar文件。如果classpath缺少sqljdbc.jar项,应用程序将引发“找不到类”的常见异常。
sqljdbc.jar文件的安装位置如下:
<安装目录>\sqljdbc_<版本>\<语言>\sqljdbc.jar
下面是用于Windows应用程序的CLASSPATH语句实例:
CLASSPATH=.;%ProgramFiles%\sqljdbc_1.1\chs\sqljdbc.jar
下面是用于Unix/Linux应用程序的CLASSPATH语句实例:
CLASSPATH=.:/home/usr1/mssqlserver2005jdbc/Driver/sqljdbc_1.1/chs/sqljdbc.jar
注意:在Window系统中,如果目录名长于8.3或文件夹名中包含空格,将导致classpath出现问题。如果怀疑存在这类问题,应暂时将sqljdbc.jar文件移动到名称简单的目录中,例如C:\Temp,更改classpath,然后测试这样是否解决了问题。
直接在命令提示符运行的应用程序
在操作系统中配置classpath。将sqljdbc.jar追加到系统的classpath中。或者,使用java-classpath选项,可以在运行此应用程序的Java命令行上指定classpath。
设置SQLServer服务器
我使用的是SQLServer2005标准版SP2,这些都默认即可,一般不用配置。如果需要配置端口请看下面。
1、“开始”→“程序”→“MicrosoftSQLServer2005”→“配置工具”→“SQLServer配置管理器”→“SQLServer2005网络配置”→“MSSQLSERVER的协议”
2、如果“TCP/IP”没有启用,右键单击选择“启动”。
3、双击“TCP/IP”进入属性设置,在“IP地址”里,可以配置“IPAll”中的“TCP端口”,默认为1433。
4、重新启动SQLServer或者重启计算机。
创建数据库
打开“SQLServerManagementStudio”,登录连接SQLServer服务器,新建数据库,命名为test
在Eclipse中测试
1、打开Eclipse,“文件”→“新建”→“项目”→“Java项目”,项目名为Test
2、在Eclipse中,选择“窗口”→“首选项...”→“Java”→“已安装的JRE”,选择已安装的JRE,点击“编辑”→“添加外部”,选择%ProgramFiles%\sqljdbc_1.1\chs\sqljdbc.jar
3、在Test项目的“JRE系统库”中可以看见sqljdbc.jar,如果没有可以右键单击项目Test→“构建路径”→“配置构建路径...”→“Java构建路径”→“库”→“添加外部JAR...”,选择%ProgramFiles%\sqljdbc_1.1\chs\sqljdbc.jar
4、编写Java代码,如下:
/**
*
*/
packagecom.ljz;
importjava.sql.*;
/**
*@authorLJZ
*
*/
publicclassTest{
publicstaticvoidmain(String[]srg){
Stringdrivername="com.microsoft.sqlserver.jdbc.SQLServerDriver";//加载JDBC驱动
StringdbURL="jdbc:sqlserver://localhost:1433;DatabaseName=db_test";//连接服务器和数据库test
Stringusername="sa";//默认用户名
StringuserPwd="*******";//密码
ConnectiondbConn=null;
Statementstmt=null;
try{
Class.forName(driverName);
dbConn=DriverManager.getConnection(dbURL,userName,userPwd);
stmt=dbConn.createStatement();
System.out.println("ConnectionSuccessful!");//如果连接成功
//控制台输出Connection
//Successful!
ResultSetrs=stmt.executeQuery("select*fromtb_test");
while(rs.next()){
System.out.print(rs.getInt(1)+""+rs.getString(2)+""
+rs.getInt(3)+"\n");
}
}catch(Exceptione){
e.printStackTrace();
}
}
}
注:
1、因为SQLExpress这个版本的服务器默认是禁用的并且端口号没有配置,所以要进行重新设置
2、如果你以前用Java连接SQLServer2000的话就要注意了:
在SQLServer2000中加载驱动和URL路径的语句是
Stringdrivername="com.microsoft.jdbc.sqlserver.SQLServerDriver";
StringdbURL="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=sample";
而SQLServer2005中加载驱动和URL的语句则为
Stringdrivername="com.microsoft.sqlserver.jdbc.SQLServerDriver";
StringdbURL="jdbc:sqlserver://localhost:1433;DatabaseName=sample";
如果写法错误将会找不到驱动。