在開始撰寫 Java 程式連接 SQL Server 2000 之前,請確認已安裝以下元件:
於 SQL Server 中建立名為 TESTDB 的資料庫,並建立 test_student 資料表,欄位包含:Sno、Sname、Sage、Ssex、Sclass。
import java.sql.*;
public class TestJdbc {
public static void main(String[] args) {
String url = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=TESTDB";
String user = "king"; // 請替換為您的資料庫帳號
String password = "sql"; // 請替換為您的資料庫密碼
String sql = "SELECT * FROM test_student";
try {
// 載入驅動程式
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
System.out.println("驅動程式載入成功!");
// 建立連線
Connection conn = DriverManager.getConnection(url, user, password);
System.out.println("資料庫連線成功!");
// 建立 Statement 並執行查詢
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(sql);
// 處理結果集
while (rs.next()) {
System.out.println("學號:" + rs.getString("Sno") +
" 姓名:" + rs.getString("Sname") +
" 年齡:" + rs.getInt("Sage") +
" 性別:" + rs.getString("Ssex") +
" 班級:" + rs.getString("Sclass"));
}
// 關閉資源
rs.close();
stmt.close();
conn.close();
} catch (ClassNotFoundException e) {
System.err.println("找不到驅動程式類別:" + e.getMessage());
} catch (SQLException e) {
System.err.println("資料庫操作錯誤:" + e.getMessage());
}
}
}
com.microsoft.jdbc.sqlserver.SQLServerDriver 為 Microsoft 官方 JDBC 驅動的主類別。jdbc:microsoft:sqlserver://主機:埠;DatabaseName=資料庫名,預設埠號為 1433。SQLException 及 ClassNotFoundException,否則無法編譯通過。finally 區塊或使用 try-with-resources(JDK 1.7+)關閉 ResultSet、Statement、Connection,避免連線洩漏。ClassNotFoundException,請確認 JDBC 驅動 JAR 檔已加入專案類別路徑。;selectMethod=cursor 或確認資料庫、資料表、欄位編碼一致。