哎呀,說了這么多的廢話,還是讓我們來看看到底JDBC的調(diào)用吧!既然我們是通過odbc訪問數(shù)據(jù)庫,所以這個odbc是跑不了的,我們先來設(shè)置你的odbc:打開你的odbc數(shù)據(jù)源->選擇系統(tǒng)dsn(Click加新的dsn-)->接下來輸入選擇數(shù)據(jù)庫類型、輸入dsn名:、選擇服務(wù)器、連接數(shù)據(jù)庫的方式、輸入數(shù)據(jù)庫的登陸用戶和密碼->測試連接,如果測試成功的話,那么你的dsn就建立好了,我的dsn名為Sqlserver.使用的是sqlserver7.0,以 “sa”登陸,密碼為空。這些東西都是后面要用道的!
好了下面讓我們來看程序代碼:
//###########################################################
//代碼開始
//###########################################################
import java.sql.*;
//加載java數(shù)據(jù)連接包,java基本所有的數(shù)據(jù)庫的調(diào)用的都在這個東西里面
public class InsertCoffees {
public static void main(String args[]) {
String url = "jdbc:odbc:sqlserver";
//取得連接的url名,注意sqlserver是dsn名
Connection con;
//實例化一個Connection對象
Statement stmt;
String query = "select * from col_link";
//選擇所有的Col_link表中的數(shù)據(jù)輸出
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
//加載jdbc-odbc橋驅(qū)動
} catch(java.lang.ClassNotFoundException e) {
System.err.print("ClassNotFoundException: ");
//加載jdbc-odbc橋錯誤
System.err.println(e.getMessage());
//其他錯誤
}
try {
con = DriverManager.getConnection(url, "sa", "");
//數(shù)據(jù)庫連接
stmt = con.createStatement();
//Create 一個聲明
stmt.executeUpdate("CREATE TABLE col_link (sitename varchar (20) NULL ,siteurl varchar (50) NULL) ");
//執(zhí)行了一個sql語句生成了一個表col_link的表
stmt.executeUpdate("insert into col_link values(‘ASP中華網(wǎng)‘,‘http://www.aspcn.com‘)");
stmt.executeUpdate("insert into col_link values(‘永遠到底有多遠‘,‘http://xuankong.com‘)");
//執(zhí)行一個insert into語句
stmt.executeUpdate("update col_link set siteurl=‘http://www.aspcn.com/xuankong/xuankongt.jpg‘ where siteurl=‘http://xuankong.com‘");
//執(zhí)行一個update語句,更新數(shù)據(jù)庫
ResultSet rs = stmt.executeQuery(query);
//返回一個結(jié)果集
System.out.println("Col_link表中的數(shù)據(jù)如下(原始數(shù)據(jù))");
//下面的語句使用了一個while循環(huán)打印出了col_link表中的所有的數(shù)據(jù)
System.out.println("站點名 "+" "+"站點地址");
System.out.println("---------------"+" "+"----------------");
while (rs.next()) {
String s = rs.getString("sitename");
String f = rs.getString("siteurl");
//取得數(shù)據(jù)庫中的數(shù)據(jù)
System.out.println(s + " " + f);
/*String t = rs.getString(1);
String l = rs.getString(2);
System.out.println(t + " " + l);*/
/*jdbc提供了兩種方法識別字段,一種是使用getXXX(注意這里的getXXX表示取不同類型字段的不同的方法)獲得字段名,
第二種*是通過字段索引,在這里我把第二種方法注釋了*/
/*你可以訪問這個連接獲得getxxx的用法:http://java.sun.com/docs/books/tutorial/jdbc/basics/_retrievingTable.html*/
}
stmt.close();
con.close();
//上面的語句關(guān)閉聲明和連接
} catch(SQLException ex) {
System.err.println("SQLException: " + ex.getMessage());
//顯示數(shù)據(jù)庫連接錯誤或者查詢錯誤
}
}
}
//###########################################################
//代碼結(jié)束
//###########################################################
在上面這個程序中我想你展示了如何使用JDBC-ODBC連接數(shù)據(jù)庫,使用SQL語句生成一個表,使用SELECT、INSERT 、UPDATE語句取的、插入和更新一個表中的數(shù)據(jù),如何通過字段名和字段索引訪問數(shù)據(jù)庫中的東東!我希望你能從上面的代碼真正的學(xué)習(xí)到一些東西!
發(fā)揮你的想象力,設(shè)想一下JAVA到底,比如說可以通過數(shù)據(jù)庫做一個不需要GUI(圖形用戶界面)的聊天室,呵呵,感覺起來就像在DOS環(huán)境下打字的聊天室!哈哈!
最后需要說的是筆者的調(diào)試上面程序的環(huán)境:WIN2000 , JDK1.3,MS SQLSERVER編輯軟件:EDITPLUS 2.01a(這最后的東西可不是廢話,雖然早就了一些專業(yè)的JAVA開發(fā)工具,但是筆者建議JAVA初學(xué)者使用文本軟件開發(fā)JAVA程序)
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請
點擊舉報。