使用JDBC訪問SQL Server 2005

  

 轉:使用JDBC訪問SQL Server 2005

1.去下載一個SQL Server用的JDBC驅動。直接去微軟下載就行,下載下來是一個exe文件,運行那個exe把文件解壓到隨便一個文件夾,取裏面的sqljdbc4.jar和sqljdbc.jar備用。微軟官方下載(下載下來的是個同意協議,然後在下載,個人喜歡官網的,有說明)

2.配置SQL Server 2005 。在SQL Server 2005中,默認不開啓TCP/IP協議,此步主要是開啓協議並使SQL Server接受遠程訪問。具體步驟如下:

(1)打開SQLServer配置管理器(SQLServer Configuration Manager),在配置管理器重轉到SQL Server 2005 網絡配置(SQL Server 2005 Network Configuration)下面的SQLEXPRESS協議(Protocols for SQLEXPRESS)。

(2)雙擊TCP/IP那一項打開TCP/IP屬性。將”已啓用(Enable)”那一項置爲“是”。切換到“IP 地址”選項卡,將“IP ALL”中的“TCP 端口(TCP Port)”設置爲1433,然後確定。



(3)打開SQL Server 外圍應用配置器(SQLServer Surface Area Configuration),然後打開“服務和連接的外圍應用配置器”,轉到SQLEXPRESS->Database Engine->遠程連接,選擇“本地鏈接和遠程連接”下面的“僅使用TCP/IP”或者“同時使用TCP/IP和named pipes”,這裏我選擇了前者,然後應用,確定。

(4)重新啓動SQLServer服務。

(5) 可以用telnet 命令測試下是否連接

    telnet 127.0.0.1 1433(telnet 命令不懂,百度)

3.測試連接。會的同學請跳過~~

(1)在SQLServer Management Studio Express中建立數據庫testDB(名字隨便起,數據表也隨便),在testDB中建表

  1. CREATE TABLE user 
  2. (  
  3. ID bigint NOT NULL,  
  4. Name varchar(20) NOT NULL,  
  5. Email varchar(50) NULL 

然後隨便往表裏加幾條數據。

(2)建個java application工程(我用的eclipse,其他IDE雷同),把SQLServer驅動導入工程,注意,如果你使用的JDK6,那麼導入sqljdbc4.jar,如果是低版本的JDK導入sqljdbc.jar,不要弄錯,否則連接時會報錯。

(3)使用JDBC訪問SQLServer的測試程序代碼。

package jdbc;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class Test {
	private Connection conn = null;

	public Test() {
		super();
	}

	public void getConnection() {
		try {
			Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver")
					.newInstance();
			String URL = "jdbc:sqlserver://localhost:1433;DatabaseName=testDB";
			String USER = "sa"; // 根據你自己設置的數據庫連接用戶進行設置
			String PASSWORD = "123"; // 根據你自己設置的數據庫連接密碼進行設置
			conn = DriverManager.getConnection(URL, USER, PASSWORD);
		} catch (java.lang.ClassNotFoundException ce) {
			System.out.println("Get Connection error:");
			ce.printStackTrace();
		} catch (java.sql.SQLException se) {
			System.out.println("Get Connection error:");
			se.printStackTrace();
		} catch (Exception e) {
			System.out.println("Get Connection error:");
			e.printStackTrace();
		}
	}

	public void testConnection() {
		if (conn == null)
			this.getConnection();
		try {
			String sql = "SELECT * FROM user";
			Statement stmt = conn.createStatement();
			ResultSet rs = stmt.executeQuery(sql);
			while (rs.next()) {
				System.out.print(rs.getString("ID") + " ");
				System.out.print(rs.getString("Name") + " ");
				System.out.println(rs.getString("Email"));
			}
			rs.close();
			stmt.close();
		} catch (SQLException e) {
			System.out.println(e.getMessage());
			e.printStackTrace();
		} finally {
			if (conn != null)
				try {
					conn.close();
				} catch (SQLException e) {
				}
		}
	}

	public static void main(String[] args) {
		Test bean = new Test();
		bean.testConnection();
	}
}

(4)運行程序,沒啥意外的話應該就OK了。連接代碼與SQLServer2000的有所不同。這兩句可以記下來備用~
Class.forName(”com.microsoft.sqlserver.jdbc.SQLServerDriver”).newInstance();
String URL = “jdbc:sqlserver://localhost:1433;DatabaseName=數據庫名稱”;
JDBC訪問SQL Server 2005設置完畢。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章