用JDBC編寫查詢Access和FoxPro數(shù)據(jù)庫
----JDBC(Java數(shù)據(jù)庫連接:JavaDatabaseConnectivity)是用于執(zhí)行SQL語句的Java應(yīng)用程序接口(JavaApplicationProgrammingInterface:JavaAPI),它由一組用Java語言寫的類與接口組成。JDBC是一種規(guī)范,其宗旨是讓各數(shù)據(jù)庫開發(fā)商為Java程序員提供標(biāo)準(zhǔn)的數(shù)據(jù)庫訪問類和接口。JDBC與Java結(jié)合,使用戶可以很容易地把SQL語句傳送到任何關(guān)系數(shù)據(jù)庫中,程序員用它編寫的數(shù)據(jù)庫應(yīng)用軟件,可在各種數(shù)據(jù)庫系統(tǒng)上運行。本文通過一個實例討論用JDBC編寫在中文Win95下訪問Access(包括Access2.0,Access7.0)和FoxPro(包括FoxPro2.6,FoxBase2.1,dBase3.0,dBase4.0等)數(shù)據(jù)庫的Java應(yīng)用程序,從中體會JDBC在數(shù)據(jù)庫應(yīng)用上實現(xiàn)"一次編程,處處運行"的功能,
安裝JDBC
----JDBC類庫已放入JDK1.1,若使用JDK1.1,則無須安裝JDBC及下面的JDBC-ODBC;因目前JDK1.1暫不支持中文,固本文主要介紹使用JDK1.02時的JDBC訪問數(shù)據(jù)庫編程,此時需要安裝JDBC,可通過訪問下列地址獲得JDBC軟件包(目前已有JDBC1.2版,本文使用JDBC1.1):
----http://splash.javasoft.com/jdbc/
----得到JDBC軟件(Windows的zip文件)包,用WinZip解壓,生成目錄JDBC,JDBC的所有內(nèi)容都在這個目錄中。
----為在編譯Java程序時調(diào)用JDBC得SQL類庫,應(yīng)在autoexec.bat批處理文件中環(huán)境變量的:\jdbc\classes。
建立數(shù)據(jù)庫和設(shè)置數(shù)據(jù)源
----Access具備完善的數(shù)據(jù)庫功能,可以作為獨立的DBMS使用,是PC微機上開發(fā)客戶/服務(wù)器型數(shù)據(jù)庫應(yīng)用的優(yōu)秀工具;FoxPro(FoxBase、dBase)是國內(nèi)PC微機用戶常用的數(shù)據(jù)庫軟件,已用它建立了大量數(shù)據(jù)庫擋案資料;討論用JavaSQLAPI編寫訪問Access和FoxPro數(shù)據(jù)庫的Java應(yīng)用程序是十分有意義的。
----現(xiàn)在對概念已作了根本的修改:傳統(tǒng)的(例如:dBase3.0、FoxBase、FoxPro2.6等)用于存貯數(shù)據(jù)的*.dbf文件不再被稱為數(shù)據(jù)庫而被稱為表(table)。Access將若干個相關(guān)聯(lián)的表(Table)組成一個數(shù)據(jù)庫(.mdb),每一個表相當(dāng)于通常(Foxbase,Foxpro,dBase)定義的一個數(shù)據(jù)庫(.dbf);而對FoxPro(FoxBase、dBase),則將放在某個目錄里的所有相關(guān)聯(lián)的*.dbf文件看作一個相當(dāng)于Access的*.mdb的數(shù)據(jù)庫。在下面的例子里,我們要使用的數(shù)據(jù)庫有兩個表:table1與table2;
table1
編號軟件名姓名通信地址電話
1Access7.0趙一北京(01)623-2731
2Access7.0錢二上海(21)443-6998
3Access7.0孫三天津(22)578-8535
4Access7.0李四長春(431)885-9854
table2如下:SupplierIDSoftwareSupplierNameAddressPhoneNumber
1Access7.0PiterFrance(33)687-9354
2Access7.0JohnAmerica(1)675-4398
3Access7.0TanakaJapen(81)854-3952
4Access7.0HesaiMexico(52)257-5793
----如下建立數(shù)據(jù)庫與數(shù)據(jù)源:
----1用Access7.0建立名為acs70db.mdb的數(shù)據(jù)庫文件,其中建有上面兩個表;將文件acs70db.mdb存盤到目錄c:\datas\acs70中;數(shù)據(jù)源名為acs70db.mdb;
----2用Access2.0建立名為acs20db.mdb的數(shù)據(jù)庫文件,其中建有上面兩個表;將文件acs20db.mdb存盤到目錄c:\datas\acs20中;注意此時表table1的字段名要改用英文;數(shù)據(jù)源名為acs20db.mdb;
----3用FoxPro2.6將上面兩個表分別建為文件table.dbf與table2.dbf,并將這兩個文件存盤到目錄c:\datas\foxp26中;
----4用FoxBase2.1將上面兩個表分別建為文件table.dbf與table2.dbf,并將這兩個文件存盤到目錄c:\datas\foxb21中;
----5用dBase3.0將上面兩個表分別建為文件table.dbf與table2.dbf,并將這兩個文件存盤到目錄c:\datas\dbs3中;
----上列數(shù)據(jù)庫制好后,打開Win95的"設(shè)置"菜單中的"控制面板?*從中啟動微軟的ODBC設(shè)置相應(yīng)的ODBC驅(qū)動器和數(shù)據(jù)源(下面分別用axs70、acs20、foxp26、foxb21和dbs3作數(shù)據(jù)源名)。
----JDBC(Java數(shù)據(jù)庫連接:JavaDatabaseConnectivity)是用于執(zhí)行SQL語句的Java應(yīng)用程序接口(JavaApplicationProgrammingInterface:JavaAPI),它由一組用Java語言寫的類與接口組成。JDBC是一種規(guī)范,其宗旨是讓各數(shù)據(jù)庫開發(fā)商為Java程序員提供標(biāo)準(zhǔn)的數(shù)據(jù)庫訪問類和接口。JDBC與Java結(jié)合,使用戶可以很容易地把SQL語句傳送到任何關(guān)系數(shù)據(jù)庫中,程序員用它編寫的數(shù)據(jù)庫應(yīng)用軟件,可在各種數(shù)據(jù)庫系統(tǒng)上運行。本文通過一個實例討論用JDBC編寫在中文Win95下訪問Access(包括Access2.0,Access7.0)和FoxPro(包括FoxPro2.6,FoxBase2.1,dBase3.0,dBase4.0等)數(shù)據(jù)庫的Java應(yīng)用程序,從中體會JDBC在數(shù)據(jù)庫應(yīng)用上實現(xiàn)"一次編程,處處運行"的功能,
安裝JDBC
----JDBC類庫已放入JDK1.1,若使用JDK1.1,則無須安裝JDBC及下面的JDBC-ODBC;因目前JDK1.1暫不支持中文,固本文主要介紹使用JDK1.02時的JDBC訪問數(shù)據(jù)庫編程,此時需要安裝JDBC,可通過訪問下列地址獲得JDBC軟件包(目前已有JDBC1.2版,本文使用JDBC1.1):
----http://splash.javasoft.com/jdbc/
----得到JDBC軟件(Windows的zip文件)包,用WinZip解壓,生成目錄JDBC,JDBC的所有內(nèi)容都在這個目錄中。
----為在編譯Java程序時調(diào)用JDBC得SQL類庫,應(yīng)在autoexec.bat批處理文件中環(huán)境變量的:\jdbc\classes。
建立數(shù)據(jù)庫和設(shè)置數(shù)據(jù)源
----Access具備完善的數(shù)據(jù)庫功能,可以作為獨立的DBMS使用,是PC微機上開發(fā)客戶/服務(wù)器型數(shù)據(jù)庫應(yīng)用的優(yōu)秀工具;FoxPro(FoxBase、dBase)是國內(nèi)PC微機用戶常用的數(shù)據(jù)庫軟件,已用它建立了大量數(shù)據(jù)庫擋案資料;討論用JavaSQLAPI編寫訪問Access和FoxPro數(shù)據(jù)庫的Java應(yīng)用程序是十分有意義的。
----現(xiàn)在對概念已作了根本的修改:傳統(tǒng)的(例如:dBase3.0、FoxBase、FoxPro2.6等)用于存貯數(shù)據(jù)的*.dbf文件不再被稱為數(shù)據(jù)庫而被稱為表(table)。Access將若干個相關(guān)聯(lián)的表(Table)組成一個數(shù)據(jù)庫(.mdb),每一個表相當(dāng)于通常(Foxbase,Foxpro,dBase)定義的一個數(shù)據(jù)庫(.dbf);而對FoxPro(FoxBase、dBase),則將放在某個目錄里的所有相關(guān)聯(lián)的*.dbf文件看作一個相當(dāng)于Access的*.mdb的數(shù)據(jù)庫。在下面的例子里,我們要使用的數(shù)據(jù)庫有兩個表:table1與table2;
table1
編號軟件名姓名通信地址電話
1Access7.0趙一北京(01)623-2731
2Access7.0錢二上海(21)443-6998
3Access7.0孫三天津(22)578-8535
4Access7.0李四長春(431)885-9854
table2如下:SupplierIDSoftwareSupplierNameAddressPhoneNumber
1Access7.0PiterFrance(33)687-9354
2Access7.0JohnAmerica(1)675-4398
3Access7.0TanakaJapen(81)854-3952
4Access7.0HesaiMexico(52)257-5793
----如下建立數(shù)據(jù)庫與數(shù)據(jù)源:
----1用Access7.0建立名為acs70db.mdb的數(shù)據(jù)庫文件,其中建有上面兩個表;將文件acs70db.mdb存盤到目錄c:\datas\acs70中;數(shù)據(jù)源名為acs70db.mdb;
----2用Access2.0建立名為acs20db.mdb的數(shù)據(jù)庫文件,其中建有上面兩個表;將文件acs20db.mdb存盤到目錄c:\datas\acs20中;注意此時表table1的字段名要改用英文;數(shù)據(jù)源名為acs20db.mdb;
----3用FoxPro2.6將上面兩個表分別建為文件table.dbf與table2.dbf,并將這兩個文件存盤到目錄c:\datas\foxp26中;
----4用FoxBase2.1將上面兩個表分別建為文件table.dbf與table2.dbf,并將這兩個文件存盤到目錄c:\datas\foxb21中;
----5用dBase3.0將上面兩個表分別建為文件table.dbf與table2.dbf,并將這兩個文件存盤到目錄c:\datas\dbs3中;
----上列數(shù)據(jù)庫制好后,打開Win95的"設(shè)置"菜單中的"控制面板?*從中啟動微軟的ODBC設(shè)置相應(yīng)的ODBC驅(qū)動器和數(shù)據(jù)源(下面分別用axs70、acs20、foxp26、foxb21和dbs3作數(shù)據(jù)源名)。