JDBC使用數據庫URL來說明數據庫驅動程序。數據庫URL類似於通用的URL,但SUN 在定義時作了一點簡化,其語法如下:
Jdbc:
:[node]/[database]
其中子協議(subprotocal)定義驅動程序類型,node提供網絡數據庫的位置和端口號,後面跟可選的參數。例如:
String url=”jdbc:inetdae:myserver:1433?language=us-english&sql7=true”
表示采用inetdae驅動程序連接1433端口上的myserver數據庫服務器,選擇語言為美國英語,數據庫的版本是mssql server 7.0。
java應用通過指定DriverManager裝入一個驅動程序類。語法如下:
Class.forName(“
”);
或
Class.forName(“
”).newInstance();
然後,DriverManager創建一個特定的連接:
Connection connection=DriverManager.getConnection(url,login,password);
Connection接口通過指定數據庫位置,登錄名和密碼連接數據庫。Connection接口創建一個Statement實
例執行需要的查詢:
Statement stmt=connection.createStatement();
Statement具有各種方法(API),如executeQuery,execute等可以返回查詢的結果集。結果集是一個ResultSet對象。具體的可以通過jdbc開發文檔查看。可以sun的站點上下載
下面例子來說明:
import java.sql.*; // 輸入JDBC package
String url = "jdbc:inetdae:myserver:1433";// 主機名和端口
String login = "user";// 登錄名
String password = "";// 密碼
try {
DriverManager.setLogStream(System.out); file://為顯示一些的信息打開一個流
file://調用驅動程序,其名字為com.inet.tds.TdsDriver
file://Class.forName("com.inet.tds.TdsDriver");
file://設置超時
DriverManager.setLoginTimeout(10);
file://打開一個連接
Connection connection = DriverManager.getConnection(url,login,password);
file://得到數據庫驅動程序版本
DatabaseMetaData conMD = connection.getMetaData();
System.out.println("Driver Name:\t" + conMD.getDriverName());
System.out.println("Driver Version:\t" + conMD.getDriverVersion());
file://選擇數據庫
connection.setCatalog( "MyDatabase");
file://創建Statement
Statement st = connection.createStatement();
file://執行查詢
ResultSet rs = st.executeQuery("SELECT * FROM mytable");
file://取得結果,輸出到屏幕
while (rs.next()){
for(int j=1; j<=rs.getMetaData().getColumnCount(); j++){
System.out.print( rs.getObject(j)+"\t");
}
System.out.println();
}
file://關閉對象
st.close();
connection.close();
} catch(Exception e) {
e.printStackTrace();
}