/*
?? 用JDBC來(lái)連接數(shù)據(jù)庫(kù)有很兩種方式,如<1>JDBC:ODBC bridge, <2>直接連接方式.
?? 第二種方式有很多好處,它可以獨(dú)立于依賴于系統(tǒng)的odbc數(shù)據(jù)源,存儲(chǔ)數(shù)據(jù)的database
?? 可以自由地移動(dòng),顯得更為靈活.
*/
import java.io.*;
import java.sql.*;
public class ConDBAccess
{
public static void main(String[] args)
{
?? try
?? {
??? //Load JDBC driver
??? Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
??? /*
???? 這里的數(shù)據(jù)庫(kù)的url一定要寫正確,這是關(guān)鍵,其中DBQ可以絕對(duì)路徑,
???? 也可以是相對(duì)路徑,為了體現(xiàn)數(shù)據(jù)存儲(chǔ)路徑的/獨(dú)立性,
???? 你可以將數(shù)據(jù)庫(kù)copy到不同的位試一下
???? */
??? String dbUrl = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=Test.mdb";
??? Connection con = DriverManager.getConnection(dbUrl,"","");
??? Statement state = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
??? //執(zhí)行SQL語(yǔ)句
??? String sql = "select * from Address";
??? ResultSet rs = state.executeQuery(sql);
??? //打印測(cè)試
??? if(rs != null)
??? {
???? while(rs.next())
???? {
????? System.out.println(rs.getString("Name")+"\t"+rs.getString("Age")+"\t"+rs.getString("Email"));
???? }
???? rs.close();
???? con.close();
??? }
?? }
?? catch(Exception e)
?? {
??? e.printStackTrace();
?? }
}
}//End class ConDBAccess
/**
附:數(shù)據(jù)庫(kù)Test.mdb的結(jié)構(gòu)設(shè)計(jì):
??? 字段???????? 類型
??? ----------------
??? name??????? text
??? sex???????? bool
??? age???????? int
??? email?????? text
??? -----------------------------
自已加幾條記錄到里面就可以測(cè)出結(jié)果了.
*/