使用JDBC連接SQL Server
設置SQL Server服務器
我使用的是SQL Server 2005標準版SP2,這些都默認即可,一般不用配置。如果需要配置端口請看下面。
1、“開始”→“程序”→“Microsoft SQL Server 2005”→“配置工具”→“SQL Server 配置管理器”→“SQL Server 2005 網絡配置”→“MSSQLSERVER 的協議”
2、如果“TCP/IP”沒有啟用,右鍵單擊選擇“啟動”。
3、雙擊“TCP/IP”進入屬性設置,在“IP 地址”里,可以配置“IPAll”中的“TCP 端口”,默認為1433。
4、重新啟動SQL Server或者重啟計算機。
創建數據庫
打開“SQL Server Management Studio”,登錄連接SQL Server服務器,新建數據庫,命名為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代碼,如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
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(); } } } |
注:
1、因為SQL Express這個版本的服務器默認是禁用的并且端口號沒有配置,所以要進行重新設置
2、如果你以前用Java連接SQL Server 2000的話就要注意了:
在SQL Server 2000 中加載驅動和URL路徑的語句是
String driverName = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
String dbURL = "jdbc:microsoft:sqlserver://localhost:1433; DatabaseName=sample";
而SQL Server 2005 中加載驅動和URL的語句則為
String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
String dbURL = "jdbc:sqlserver://localhost:1433; DatabaseName=sample";
如果寫法錯誤將會找不到驅動。
jtds連接sqlserver
JTDS是一個開放源代碼的100%純Java的,用于JDBC 3.0驅動Microsoft SQL Server 和Sybase(10 ,11 ,12 ,15 版本)的驅動程序 。 JTDS是基于freetds的,并且是目前最快的生產準備JDBC驅動程序為SQL Server和Sybase 。
JTDS完全與JDBC 3.0兼容,支持只向前的,和可滾動/可更新的結果集(ResultSets)中并行(完全獨立)語句,并且可實施所有databasemetadata和resultsetmetadata方法。
jTDS - SQL Server and Sybase JDBC driver
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
package sqlserver_jtds; import java.sql.*; public class SQLServer { String dbURL = "jdbc:jtds:sqlserver://127.0.0.1:1433;;DatabaseName=test" ; String user = "sa" ; String password = "123456" ; Connection conn; public SQLServer(){ this .connect(); } public void connect(){ try { try { Class.forName( "net.sourceforge.jtds.jdbc.Driver" ); } catch (Exception e){ e.printStackTrace(); } //DriverManager.registerDriver(new net.sourceforge.jtds.jdbc.Driver()); conn = DriverManager.getConnection(dbURL,user,password); DatabaseMetaData metaData = conn.getMetaData(); System.out.print(metaData.getDatabaseProductVersion()); } catch (Exception e){ e.printStackTrace(); } } public static void main(String[] args){ new SQLServer(); } } |