top
Loading...
Servlet中jdbc應用高級篇(一)

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:" + conMD.getDriverName());

System.out.println("Driver Version:" + 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)+"");

}

System.out.println();

}

file://關閉對象

st.close();

connection.close();

} catch(Exception e) {

e.printStackTrace();

}
...

BR>
作者:http://www.zhujiangroad.com
來源:http://www.zhujiangroad.com
北斗有巢氏 有巢氏北斗