![第12章 訪問數(shù)據(jù)庫(kù)_第1頁(yè)](http://file4.renrendoc.com/view/bda0ebb1ebb596fd5cd68c006b378039/bda0ebb1ebb596fd5cd68c006b3780391.gif)
![第12章 訪問數(shù)據(jù)庫(kù)_第2頁(yè)](http://file4.renrendoc.com/view/bda0ebb1ebb596fd5cd68c006b378039/bda0ebb1ebb596fd5cd68c006b3780392.gif)
![第12章 訪問數(shù)據(jù)庫(kù)_第3頁(yè)](http://file4.renrendoc.com/view/bda0ebb1ebb596fd5cd68c006b378039/bda0ebb1ebb596fd5cd68c006b3780393.gif)
![第12章 訪問數(shù)據(jù)庫(kù)_第4頁(yè)](http://file4.renrendoc.com/view/bda0ebb1ebb596fd5cd68c006b378039/bda0ebb1ebb596fd5cd68c006b3780394.gif)
![第12章 訪問數(shù)據(jù)庫(kù)_第5頁(yè)](http://file4.renrendoc.com/view/bda0ebb1ebb596fd5cd68c006b378039/bda0ebb1ebb596fd5cd68c006b3780395.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第12章訪問數(shù)據(jù)庫(kù)
主要任務(wù)學(xué)習(xí)使用結(jié)構(gòu)化查詢語(yǔ)言SQL
學(xué)習(xí)建立Access數(shù)據(jù)庫(kù)掌握數(shù)據(jù)庫(kù)的訪問
本章主要內(nèi)容1.結(jié)構(gòu)化查詢語(yǔ)言SQL2.Access數(shù)據(jù)庫(kù)3.通過Java程序訪問數(shù)據(jù)庫(kù)4.通過窗口界面訪問數(shù)據(jù)庫(kù)
12.1結(jié)構(gòu)化查詢語(yǔ)言SQLSQL是StructuredQueryLanguage結(jié)構(gòu)化查詢語(yǔ)言的縮寫,SQL是用于對(duì)存放在計(jì)算機(jī)數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行組織、管理和檢索的一種工具;SQL是針對(duì)一種特定類型的數(shù)據(jù)庫(kù)――關(guān)系數(shù)據(jù)庫(kù)使用的。SQL是一種數(shù)據(jù)庫(kù)子語(yǔ)言,SQL語(yǔ)句可以被嵌入到另一種語(yǔ)言中。SQL也非嚴(yán)格的結(jié)構(gòu)化語(yǔ)言,它的句法更接近英語(yǔ)語(yǔ)句。SQL還是一種交互式查詢語(yǔ)言。本節(jié)的內(nèi)容主要介紹SQL的基本語(yǔ)法知識(shí)。12.1.1select查詢語(yǔ)句查詢是SQL語(yǔ)言的核心,而用于表達(dá)SQL查詢的select語(yǔ)句則是功能最強(qiáng)也是最為復(fù)雜的SQL語(yǔ)句,它從數(shù)據(jù)庫(kù)中檢索數(shù)據(jù),并將查詢結(jié)果提供給用戶?,F(xiàn)在建立一個(gè)名為DB的簡(jiǎn)單數(shù)據(jù)庫(kù),該庫(kù)中存放一個(gè)叫S的用戶情況表,如表所示。例12.1如果要列出S表中所有姓名、性別和工資的內(nèi)容,可用下面的select語(yǔ)句select姓名,性別,工資froms;
實(shí)現(xiàn)。查詢結(jié)果如表所示。例12.2如果要列出s表中所有男性的姓名、性別和工資的內(nèi)容,可用下面的select語(yǔ)句select姓名,性別,工資fromswhere性別=“男”
;實(shí)現(xiàn)。查詢結(jié)果如表所示。例12.3做一個(gè)稍微復(fù)雜一點(diǎn)的查詢?nèi)绻谐鯯表中年齡大于和等于24的所有女性的姓名、工資、電話和居住地區(qū),并且按工資排序,可用下面的Select語(yǔ)句:select姓名,工資,電話,居住地區(qū)formswhere年齡>=24and性別=“女”orderby工資;
實(shí)現(xiàn)。查詢結(jié)果如表所示。小結(jié):從這3個(gè)例子可以看到,對(duì)于簡(jiǎn)單查詢,SQL的select語(yǔ)句和英文語(yǔ)法相似。Select語(yǔ)句可以分為4個(gè)成分子句:select查詢內(nèi)容、from查詢對(duì)象、where查詢條件和orderby輸出方式??偨Y(jié)一下可得出select的語(yǔ)法格式:select數(shù)據(jù)項(xiàng)1,數(shù)據(jù)項(xiàng)2,…from表名where條件表達(dá)式orderby排序選項(xiàng)select語(yǔ)句用來(lái)從數(shù)據(jù)庫(kù)表中檢索出滿足條件表達(dá)式要求的數(shù)據(jù)項(xiàng)。12.1.2insertinto添加語(yǔ)句SQL不僅能進(jìn)行數(shù)據(jù)庫(kù)的查詢,還可以添加新數(shù)據(jù)到數(shù)據(jù)庫(kù)中。添加語(yǔ)句的語(yǔ)法格式:
insertinto表名(col1,col2...)values(value1,value2...)添加語(yǔ)句用來(lái)向一個(gè)表中添加指定的新數(shù)據(jù)例12.4將張馳作為一個(gè)新的成員加入表S中。insertintoS(xm,xb,nl,gz,dh,dz)values(‘張馳’,’男’,28,4500,8888,’北京’)Insert語(yǔ)句結(jié)束后,新行就是表S中的一部分了。Insert語(yǔ)句還可以將多行數(shù)據(jù)添加到另外一個(gè)目標(biāo)表(B)中,在這種形式的Insert語(yǔ)句中,添加的數(shù)據(jù)值由查詢語(yǔ)句指定。添加的值來(lái)自已經(jīng)存在的表(A)中。看下面的例子。InsertintoB(Num,Date,Amount)SelectNum,Date,AmountFromAWhereDate<'30-12-2007'這條語(yǔ)句標(biāo)識(shí)了接收新記錄的表B和接收數(shù)據(jù)的數(shù)據(jù)項(xiàng)名稱,完全類似于單行Insert語(yǔ)句。語(yǔ)句的剩余部分是一個(gè)查詢,它檢索A表中的數(shù)據(jù)。SQL先執(zhí)行對(duì)A表的查詢,然后將查詢結(jié)果逐行插入到B表中去。例12.5把2007年12月30日之前產(chǎn)生的訂單編號(hào)(Num)、日期(Date)和數(shù)目(Amount)從A表復(fù)制到另一個(gè)名為B的表中去,可用下面的語(yǔ)句:12.1.3Update更新語(yǔ)句
SQL還可以對(duì)數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行修改和更新,而且更改數(shù)據(jù)庫(kù)內(nèi)容的SQL語(yǔ)句更簡(jiǎn)單。SQL用update語(yǔ)句更新表中選定行的一列或多列的值。update語(yǔ)句的語(yǔ)法格式:
update表名set字段名1=value1[,字段名2=value2]...where條件例12.6這是一個(gè)簡(jiǎn)單的update語(yǔ)句,可將表c中客戶名為slp的客戶的信貸值更新為10萬(wàn)并將他的id變更為99。
updatecsetcredit=100000.00,id=99wherename='slp'例12.7如果要將表C中客戶ID為80,90,100,120客戶的信貸值更新為20萬(wàn),狀態(tài)值為021,可用下列語(yǔ)句:
updatecsetcredit=200000.00,state=021whereidin(80,90,100,120)Delete刪除語(yǔ)句用來(lái)刪除數(shù)據(jù)庫(kù)表或表中某些行記錄。Delete刪除語(yǔ)句語(yǔ)法格式如下:Deletefrom表名Where條件例12.8從表D中刪除ID為99的所有行的記錄。DeletefromD
WhereID=99
12.1.4Delete刪除語(yǔ)句
以上介紹的是數(shù)據(jù)操縱語(yǔ)言的Select語(yǔ)句。下面介紹的是數(shù)據(jù)定義語(yǔ)言,包括Create和Drop語(yǔ)句。Create語(yǔ)句的語(yǔ)法格式:
createtable表名(字段名1數(shù)據(jù)類型(notnull),字段名2數(shù)據(jù)類型(notnull),...)Create語(yǔ)句用來(lái)創(chuàng)建一個(gè)給定字段的表。12.1.5CreateTable創(chuàng)建表語(yǔ)句createtableB(namechar(30),amoutnumber(8),idnumber(4))表被建立后就可以添入數(shù)據(jù)了??捎孟旅娴恼Z(yǔ)句輸入數(shù)據(jù)。InsertintoB(name,amout,id)values('zhangchi',100,1)例12.9創(chuàng)建一個(gè)具有字段name字符型30位,amout數(shù)值型8位,id數(shù)值型4位的表B。如果不再需要數(shù)據(jù)庫(kù)中的某個(gè)表,可用Droptable語(yǔ)句將該表及其所保存的數(shù)據(jù)從數(shù)據(jù)庫(kù)中刪除掉。Droptable語(yǔ)句的語(yǔ)法格式如下:
Droptable表名Drop語(yǔ)句用來(lái)刪除一個(gè)完整的表。例12.10如果要?jiǎng)h除表B可使用下面的語(yǔ)句。DroptableB12.1.6Droptable刪除表語(yǔ)句12.2Access數(shù)據(jù)庫(kù)管理軟件數(shù)據(jù)庫(kù)管理系統(tǒng)有多種多樣的產(chǎn)品,例如Oracle、SQLServer、MySQL、DB2、Informix、Sybase、Access,可以滿足用戶的不同層次需求。Access提供了大量的工具和向?qū)В词箾]有任何編程經(jīng)驗(yàn),也可以通過可視化的操作來(lái)完成大部分的數(shù)據(jù)庫(kù)管理和開發(fā)工作。本節(jié)的內(nèi)容主要介紹如何使用Access數(shù)據(jù)庫(kù)管理系統(tǒng)創(chuàng)建數(shù)據(jù)庫(kù)文件及保存數(shù)據(jù)的表對(duì)象。創(chuàng)建數(shù)據(jù)庫(kù)文件之前,先要確定使用什么數(shù)據(jù)庫(kù)管理軟件。下面介紹如何使用Access數(shù)據(jù)庫(kù)管理軟件創(chuàng)建學(xué)生信息數(shù)據(jù)庫(kù)stuDB。創(chuàng)建數(shù)據(jù)庫(kù)文件分為如下3個(gè)步驟。第1步:創(chuàng)建空數(shù)據(jù)庫(kù)文件第2步:在數(shù)據(jù)庫(kù)中創(chuàng)建表對(duì)象數(shù)據(jù)庫(kù)最重要的功能是保存數(shù)據(jù),而數(shù)據(jù)要通過不同的表對(duì)象來(lái)保存,數(shù)據(jù)庫(kù)如果視為書庫(kù),表就是存放物品的書架。第3步:向表中輸入數(shù)據(jù)12.2.1創(chuàng)建數(shù)據(jù)庫(kù)文件Java應(yīng)用程序使用ODBC數(shù)據(jù)源管理器訪問數(shù)據(jù)。ODBC是英文OpenDatabaseConnectivity的縮寫,中文含義為開放式數(shù)據(jù)庫(kù)互聯(lián)。ODBC是一種訪問數(shù)據(jù)庫(kù)的工具,只要操作系統(tǒng)中有相應(yīng)的ODBC驅(qū)動(dòng)程序,任何應(yīng)用程序都可以通過ODBC來(lái)訪問數(shù)據(jù)庫(kù)。DSN(DateSourceName)的中文含義為數(shù)據(jù)源名,它用來(lái)定位和標(biāo)識(shí)ODBC兼容的數(shù)據(jù)庫(kù)。DSN是應(yīng)用程序和數(shù)據(jù)庫(kù)之間的橋梁,ODBC的首要任務(wù)就是設(shè)置DSN,在WindowsXP操作系統(tǒng)中自帶有“ODBC數(shù)據(jù)源管理器”專門用來(lái)設(shè)置DSN。12.2.2創(chuàng)建連接數(shù)據(jù)庫(kù)的數(shù)據(jù)源下面介紹連接stuDB數(shù)據(jù)庫(kù)的數(shù)據(jù)源stuDB。操作步驟如下。(1)單擊WindowsXP的“開始”→“控制面板”命令,打開“控制面板”窗口,如圖所示。(2)在“控制面板”窗口中雙擊“管理工具”圖標(biāo),打開“管理工具”窗口,如圖所示。(3)在“管理工具”對(duì)話框中雙擊“數(shù)據(jù)源(ODBC)”圖標(biāo),打開“ODBC數(shù)據(jù)源管理器”對(duì)話框,如圖所示,單擊“系統(tǒng)DSN”選項(xiàng)卡。(4)單擊“添加”按鈕,將彈出“創(chuàng)建新數(shù)據(jù)源”對(duì)話框,如圖所示。選擇MicrosoftAccessDrive選項(xiàng)并單擊“完成”按鈕。將彈出“ODBCMicrosoftAccess安裝”對(duì)話框,如圖所示。運(yùn)行結(jié)果顯示:(5)在“數(shù)據(jù)源名”欄中輸入DSN名稱stuDB,然后單擊“數(shù)據(jù)庫(kù)”欄中“數(shù)據(jù)庫(kù):”下的“選擇”按鈕,將打開“選擇數(shù)據(jù)庫(kù)”對(duì)話框,如圖所示。(6)在“選擇數(shù)據(jù)庫(kù)”對(duì)話框中先在“目錄”框下選擇數(shù)據(jù)庫(kù)存放的路徑,再選擇要使用的數(shù)據(jù)庫(kù),例如“c:\Java\程序\database\stuDB.mdb”,然后單擊“確定”按鈕返回“ODBCMicrosoftAccess安裝”對(duì)話框。(7)在“ODBCMicrosoftAccess安裝”對(duì)話框中可看到數(shù)據(jù)庫(kù)文件的路徑及名稱如圖,單擊“確定”按鈕返回“ODBC數(shù)據(jù)源管理器”對(duì)話框。(8)在“ODBC數(shù)據(jù)源管理器”對(duì)話框可看到創(chuàng)建的系統(tǒng)數(shù)據(jù)源stuDB,如圖所示,單擊“確定”按鈕就完成了配置DSN的工作。12.3通過Java程序訪問數(shù)據(jù)庫(kù)12.3.1JDBCJDBC是一種可用于執(zhí)行SQL語(yǔ)句的JavaAPI(ApplicationProgrammingInterface應(yīng)用程序設(shè)計(jì)接口)。它由一些Java語(yǔ)言編寫的類和接口組成的。使用它可以將Java程序連接到Oracle、SQLServer等多種關(guān)系型數(shù)據(jù)庫(kù)。JDBC能完成下列3件事:
(1)同一個(gè)數(shù)據(jù)庫(kù)建立連接;
(2)向數(shù)據(jù)庫(kù)發(fā)送SQL語(yǔ)句;
(3)送回?cái)?shù)據(jù)庫(kù)處理的結(jié)果。例12.11查詢并輸出stuDB數(shù)據(jù)庫(kù)student表中“學(xué)號(hào)”與“姓名”數(shù)據(jù)的程序。importjava.util.*;importjava.sql.*;publicclassDBxc{ publicstaticvoidmain(String[]args) { Connectionconn=null; Statementstmt=null; ResultSetrs=null; try{ Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");//聲明使用的驅(qū)動(dòng)程序12.3.2通過Java程序輸出數(shù)據(jù)庫(kù)的數(shù)據(jù)Conn=DriverManager.getConnection("jdbc:odbc:stuDB");//創(chuàng)建連接數(shù)據(jù)庫(kù)對(duì)象
}catch(Exceptione){ System.err.println("OpenConn:"+e.getMessage());}//訪問數(shù)據(jù)庫(kù),輸出數(shù)據(jù)庫(kù)中數(shù)據(jù)
try { stmt=(Statement)conn.createStatement();//創(chuàng)建操作SQL語(yǔ)句的對(duì)象
Stringsql="selectsnum,snamefromstudent";
rs=stmt.executeQuery(sql);
//創(chuàng)建保存SQL語(yǔ)句執(zhí)行結(jié)果的對(duì)象
//獲取每條記錄中的數(shù)據(jù)信息,并顯示出來(lái)while(rs.next()){//當(dāng)存在下一條記錄時(shí)再次循環(huán)longxh=rs.getLong(1);//獲取一條記錄的第1列數(shù)據(jù)Stringxm=rs.getString(2);//獲取一條記錄的第2列數(shù)據(jù)System.out.print("學(xué)號(hào):"+xh);//輸出第1列數(shù)據(jù)System.out.println("姓名:"+xm);//輸出第2列數(shù)據(jù)
} rs.close();//關(guān)閉ResultSet對(duì)象
stmt.close();//關(guān)閉Statement對(duì)象
conn.close();//關(guān)閉Connection連接對(duì)象
}catch(SQLExceptione) {System.out.print("SQLExceptionoccur.Messageis:"); System.out.print(e.getMessage()); } }}在Java程序中要使用SQL語(yǔ)句對(duì)數(shù)據(jù)庫(kù)的數(shù)據(jù)進(jìn)行查詢,需要做以下工作:1引入SQL類包通過import="java.sql.*";語(yǔ)句引入了Java的sql類包,可以使用sql包中的類。2裝載并注冊(cè)驅(qū)動(dòng)程序連接JdbcOdbc驅(qū)動(dòng)程序的類名為sun.jdbc.odbc.JdbcOdbcDriver,使用驅(qū)動(dòng)程序類,要使用Class類的靜態(tài)方法forName獲取驅(qū)動(dòng)程序?qū)ο?。一般使用下面的語(yǔ)句裝載并注冊(cè)驅(qū)動(dòng)程序:Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");12.3.3連接數(shù)據(jù)庫(kù)與查詢數(shù)據(jù)的過程
Connection對(duì)象來(lái)自于java.sql.Connection接口,它的作用是與數(shù)據(jù)庫(kù)進(jìn)行連接,可用以下語(yǔ)句創(chuàng)建Connection對(duì)象:
Connectionc=DriverManager.getConnection(jdbcurl,用戶名,密碼);4.創(chuàng)建執(zhí)行SQL語(yǔ)句的Statement對(duì)象與ResultSet對(duì)象(1)Statement對(duì)象執(zhí)行SQL語(yǔ)句的Statement對(duì)象來(lái)自于java.sql.Statement接口,它的作用是對(duì)一個(gè)特定的數(shù)據(jù)庫(kù)執(zhí)行SQL語(yǔ)句操作。通過Connection對(duì)象的createStatement()方法經(jīng)過Statement類型轉(zhuǎn)換可以得到一個(gè)Statement對(duì)象。3.創(chuàng)建與數(shù)據(jù)庫(kù)建立連接的Connection對(duì)象(2)ResultSet對(duì)象
ResultSet對(duì)象來(lái)自于java.sql.ResultSet接口,它被稱為結(jié)果集,代表一個(gè)特定的容器,用來(lái)保存查詢的所有結(jié)果數(shù)據(jù)。
ResultSet對(duì)象可以按查詢結(jié)果的行對(duì)數(shù)據(jù)進(jìn)行存取。存取其中的數(shù)據(jù)時(shí)會(huì)用到以下方法:
next(),可以移動(dòng)指針到查詢到的當(dāng)前數(shù)據(jù)行的下一行。
getXXXX(n),可以給出查詢到的當(dāng)前行數(shù)據(jù)第n列的數(shù)值。XXXX表示不同的數(shù)據(jù)類型。5.釋放資源最后要使用close()方法釋放Connection對(duì)象、Statement對(duì)象與ResultSet對(duì)象。
importjava.util.*;importjava.sql.*;publicclassDBtjsc{ publicstaticvoidmain(String[]args) { Connectionconn=null; PreparedStatementps; Statementstmt=null; ResultSetrs=null; try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
conn=DriverManager.getConnection("jdbc:odbc:stuDB"); }catch(Exceptione){ System.err.println("OpenConn:"+e.getMessage());}12.3.4通過Java程序添加并刪除數(shù)據(jù)庫(kù)中的數(shù)據(jù)try { stmt=(Statement)conn.createStatement();
Stringsql1="insertintosc(snum,cnum,grade)values(29,?,?)";ps=(PreparedStatement)conn.prepareStatement(sql1); ps.setInt(1,12); ps.setFloat(2,90);
ps.executeUpdate(); //刪除記錄
Stringsql2="deletefromscwheresnum=27andcnum=9";
stmt.executeUpdate(sql2); //查詢記錄
rs=stmt.executeQuery("select*fromsc"); while(rs.next()){ intxh=rs.getInt(1);intkch=rs.getInt(2); floatfs=rs.getFloat(3); System.out.print("學(xué)號(hào):"+xh); System.out.print("課程號(hào):"+kch); System.out.println("分?jǐn)?shù):"+fs); } rs.close();stmt.close();conn.close();} catch(SQLExceptione) { System.out.print("SQLExceptionoccur.Messageis:"); System.out.print(e.getMessage()); } }} (1)PreparedStatement對(duì)象本例中使用了Statement的子接口PreparedStatement對(duì)象,它的功能更強(qiáng)大,它使用的SQL語(yǔ)句中可以包含多個(gè)問號(hào)用“?”代表的字段,這樣的SQL語(yǔ)句稱為預(yù)編譯的SQL語(yǔ)句,例如
Stringsql="insertintoscvalues(?,?,?)");
通過PreparedStatement對(duì)象的setXXXX()方法可以分別給“?”代表的字段賦值。(2)使用不同的SQL語(yǔ)句通過本例可以看到,連接數(shù)據(jù)庫(kù)的方式是相同的,不同的是SQL語(yǔ)句與執(zhí)行SQL語(yǔ)句的對(duì)象。說明:例12.13更新數(shù)據(jù)庫(kù)中數(shù)據(jù)的程序。importjava.util.*;importjava.sql.*;publicclassDBgx{ publicstaticvoidmain(String[]args) { Connectionconn=null;Statementstmt=null; PreparedStatementps;ResultSetrs=null; try{ Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
conn=DriverManager.getConnection("jdbc:odbc:stuDB"); }catch(Exceptione){ System.err.println("數(shù)據(jù)庫(kù)連接失敗原因:"+e.getMessage());}try {stmt=(Statement)conn.createStatement();
Stringsql3="updatestudentsetsnum=?,sname=?wheresnum=?";ps=(PreparedStatement)conn.prepareStatement(sql3);12.3.5通過Java程序更新數(shù)據(jù)庫(kù)中的數(shù)據(jù)
ps.setInt(1,31);ps.setString(2,"lp"); ps.setInt(3,29);ps.executeUpdate(); Stringsql="selectsnum,snamefromstudent"; rs=stmt.executeQuery(sql); while(rs.next()){ longxh=rs.getLong(1);Stringxm=rs.getString(2); System.out.print("學(xué)號(hào):"+xh);System.out.println("姓名:"+xm); } rs.close();stmt.close(); conn.close(); }catch(SQLExceptione){System.out.print("SQL操作失敗原因:"+e.getMessage()); } }} 12.4通過窗口界面訪問數(shù)據(jù)庫(kù)本節(jié)主要介紹如何通過窗口界面訪問數(shù)據(jù)庫(kù)。編寫通過窗口界面訪問數(shù)據(jù)庫(kù)的程序,是由一組相關(guān)的Java類組成的,共同完成一些相關(guān)任務(wù)的多個(gè)類一般稱為一組應(yīng)用程序。數(shù)據(jù)庫(kù)的應(yīng)用程序一般可以分為三層架構(gòu)。最下層為數(shù)據(jù)庫(kù)層。第二層是業(yè)務(wù)層,它們也可以看作是中間層,具有上傳下達(dá)的功能。最上層是用戶層。在編寫下面這組Java應(yīng)用程序前先創(chuàng)建一個(gè)文件夾stnMIS,并在stnMIS目錄下再創(chuàng)建兩個(gè)子文件夾connDB與student。將stuDB.mdb數(shù)據(jù)庫(kù)文件先存放在connDB下,并建立數(shù)據(jù)源stuDB2。例12.14為了使Java應(yīng)用程序結(jié)構(gòu)清晰,功能分明,在connDB文件夾下創(chuàng)建一個(gè)聲明數(shù)據(jù)庫(kù)操作變量、包含連接數(shù)據(jù)源stuDB方法、查詢數(shù)據(jù)方法與更新數(shù)據(jù)的類DatabaseConn,其源代碼(見課本P254)12.4.1創(chuàng)建連接數(shù)據(jù)源的類例12.15為了分別處理不同的問題,本例在student文件夾下創(chuàng)建了一個(gè)專門處理數(shù)據(jù)操作、臨時(shí)存儲(chǔ)數(shù)據(jù)的類StuBean,它的功能是接收從窗口輸入的數(shù)據(jù),編寫SQL語(yǔ)句,最后創(chuàng)建DatabaseConn對(duì)象訪問數(shù)據(jù)庫(kù)(見課本
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 三年級(jí)數(shù)學(xué)上冊(cè)教學(xué)詳案-第3單元1捐書活動(dòng)(北師大版)
- 2025年金屬門窗及類似制品合作協(xié)議書
- 2025年產(chǎn)品采購(gòu)合同經(jīng)典版(三篇)
- 2025年個(gè)人獨(dú)資企業(yè)解散協(xié)議(三篇)
- 2025年個(gè)人機(jī)械加工合同模板(2篇)
- 2025年個(gè)人設(shè)備維修合同模板(三篇)
- 2025年個(gè)人裝修承包合同常用版(2篇)
- 2025年企業(yè)臨時(shí)用工聘合同(4篇)
- 2025年個(gè)人租賃房屋協(xié)議(2篇)
- 沿江服裝運(yùn)輸合同
- 小學(xué)六年級(jí)數(shù)學(xué)上冊(cè)《簡(jiǎn)便計(jì)算》練習(xí)題(310題-附答案)
- 2024年中國(guó)養(yǎng)老產(chǎn)業(yè)商學(xué)研究報(bào)告-銀發(fā)經(jīng)濟(jì)專題
- 高教版2023年中職教科書《語(yǔ)文》(基礎(chǔ)模塊)下冊(cè)教案全冊(cè)
- 人教版英語(yǔ)七年級(jí)上冊(cè)閱讀理解專項(xiàng)訓(xùn)練16篇(含答案)
- 護(hù)理教學(xué)查房評(píng)分標(biāo)準(zhǔn)
- GB/T 23505-2017石油天然氣工業(yè)鉆機(jī)和修井機(jī)
- 《清廉文化進(jìn)校園》廉潔文化教育主題班會(huì)課件
- 人工智能發(fā)展史課件
- 古樹名木保護(hù)建設(shè)項(xiàng)目可行性研究報(bào)告
- 幼小銜接學(xué)拼音
- 運(yùn)動(dòng)技能學(xué)習(xí)與控制課件第九章運(yùn)動(dòng)技能學(xué)習(xí)概述
評(píng)論
0/150
提交評(píng)論