JDBC 自 JDK 1.1 起內建,提供統一的資料庫存取介面。本文示範如何透過 JDBC-ODBC 橋接器,在 Java Applet 中連接 Microsoft SQL Server,執行簡單查詢並顯示結果。
COMPANY 與資料表 TB_NAMEJavadata,指向該資料庫sa 帳號、空密碼(僅供測試)import java.net.*;
import java.sql.*;
public class dbexamp extends java.applet.Applet {
public void init() {
String url = "jdbc:odbc:Javadata";
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con = DriverManager.getConnection(url, "sa", "");
DatabaseMetaData dma = con.getMetaData();
System.out.println("Connect to " + dma.getURL());
System.out.println("Driver: " + dma.getDriverName());
System.out.println("Version: " + dma.getDriverVersion());
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery(
"SELECT * FROM company.dbo.TB_NAME WHERE number = 1"
);
rs.next();
String dispresult = rs.getString("name");
System.out.println(dispresult); // 實際應用可在 paint() 或 AWT 元件顯示
rs.close();
stmt.close();
con.close();
} catch (SQLException ex) {
System.out.println("!!! SQL Exception !!!");
while (ex != null) {
System.out.println("SQLState: " + ex.getSQLState());
System.out.println("Message: " + ex.getMessage());
System.out.println("Vendor: " + ex.getErrorCode());
ex = ex.getNextException();
}
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
sun.jdbc.odbc.JdbcOdbcDriver(JDK 內建,JDK 8 後已移除)jdbc:odbc:<DSN名稱>database.dbo.table 完整名稱getNextException()JDBC-ODBC 橋接器已於 Java 8 移除,現代專案建議使用 Microsoft JDBC Driver for SQL Server(Type 4 純 Java 驅動),連線字串格式為 jdbc:sqlserver://host:1433;databaseName=DB,不再依賴 ODBC DSN,部署更簡單、效能更好。