Java應(yīng)用程序-習(xí)題-第13章_第1頁
Java應(yīng)用程序-習(xí)題-第13章_第2頁
Java應(yīng)用程序-習(xí)題-第13章_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

習(xí)題一、選擇題(答案可能不止一個)1.使用下面的Connection的哪個方法可以建立一個PreparedStatement接口()A.createPrepareStatement() B.prepareStatement() C.createPreparedStatement() D.preparedStatement()2.在JDBC中可以調(diào)用數(shù)據(jù)庫的存儲過程的接口是()A.Statement B.PreparedStatement C.CallableStatement D.PrepareStatement3.下面的描述正確的是()A.PreparedStatement繼承自Statement B.Statement繼承自PreparedStatement C.ResultSet繼承自Statement D.CallableStatement繼承自PreparedStatement4.下面描述中,錯誤的是()A.Statement的executeQuery()方法會返回一個結(jié)果集 B.Statement的executeUpdate()方法會返回是否更新成功的boolean值 C.使用ResultSet中的getString()可以獲得一個對應(yīng)于數(shù)據(jù)庫中char類型的值 D.ResultSet中的next()方法會使結(jié)果集中的下一行成為當(dāng)前行5.如果數(shù)據(jù)庫中某個字段為numeric型,可以通過結(jié)果集中的哪個方法獲取?()A.getNumeric() B.getDouble() C.setNumeric() D.setDouble()6.在JDBC中使用事務(wù),想要回滾事務(wù)的方法是()A.Connection的commit() B.Connection的setAutoCommit() C.Connection的rollback() D.Connection的close()7.查詢操作的結(jié)果是()A.整數(shù) B.ResultSet C.Set D.Vector8.增刪改操作的結(jié)果是()A.整數(shù) B.ResultSet C.Set D.Vector9.結(jié)果集中,能夠?qū)崿F(xiàn)指針下移一條記錄是()方法A.new() B.next() C.nextPointer() D.last()10.要得到結(jié)果集double類型字段的數(shù)據(jù),可調(diào)用()方法A.get("價格") B.getInt("價格") C.getString("價格") D.getDouble("價格")二、填空題1.JDBC的典型用法是“三層結(jié)構(gòu)”,即:客戶端、____________、____________;2.加載驅(qū)動程序的語句是_______________________________;3.創(chuàng)建Connection對象的語句是_______________________________;4.生成Statement對象的語句是_______________________________;5.執(zhí)行查詢操作的語句是_______________________________;6.執(zhí)行增刪改操作的語句是_______________________________。三、思考題1.請簡述一下Statement和PreparedStatement之間的區(qū)別;2.簡述進(jìn)行數(shù)據(jù)庫連接、操作的主要步驟;3.談一談你對Transaction(事務(wù))的認(rèn)識,描述一下Transaction的四個特性;4.說明JDBC事務(wù)所涉及的方法,并加以解釋;5.結(jié)果集可滾動有什么優(yōu)點(diǎn)?怎樣實現(xiàn)結(jié)果集的更新?四、編程題1.現(xiàn)有一個名為課程.mdb的Access數(shù)據(jù)庫,只包含一個表courses,該表的字段如下:課程代碼(文本,長度6,主鍵),課程名稱(文本,長度60),教學(xué)承擔(dān)系(文本,長度30),學(xué)分(單精度),考核方式(文本,長度10),如圖1所示:圖1course表記錄現(xiàn)要求采用JDBC/ODBC橋方式連接數(shù)據(jù)庫,編程顯示出“軟件工程系”開設(shè)的所有“考試”課程的信息。2.在IP為172.16.42.234的服務(wù)器上安裝了SQLServer2005數(shù)據(jù)庫系統(tǒng),創(chuàng)建了一個名為corejava的數(shù)據(jù)庫,用戶名為sise,密碼為software,具有讀、寫權(quán)限。在該數(shù)據(jù)庫中還包含一個users表,該表各字段的內(nèi)容如下表1所示: 表1users表結(jié)構(gòu)字段名數(shù)據(jù)類型是否允許為空說明nameVarchar(10)否用戶名,主鍵passwordVarchar(20)否密碼ageint是年齡sexVarchar(2)是性別emailVarchar(100)否電子郵箱resumeVarchar(200)是個人簡歷 請編程實現(xiàn)數(shù)據(jù)庫連接,并具備如下功能:(1)輸入用戶資料:用戶名、密碼、年齡、性別、電子郵箱、個人簡歷,能將這些信息保存到數(shù)據(jù)庫中;(2)輸入用戶名、密碼,能判斷該用戶是否已注冊。3.利用JDBC連接數(shù)據(jù)庫,只要提供訪問數(shù)據(jù)庫的相關(guān)參數(shù):驅(qū)動程序、URL、用戶名、密碼即可,之后執(zhí)行相應(yīng)的SQL語句。現(xiàn)在請你編寫一個數(shù)據(jù)庫操作的通用類,實現(xiàn)查詢、增刪改操作功能。要求如下:classMyDB{//連接數(shù)據(jù)庫publicConnectiongetConnection(StringdriverName,StringURL,StringuserName,Stringpassword){…. }/*執(zhí)行SQL語句,有可能是select、insert、update、delete語句中的任何一個,要對參數(shù)sql先進(jìn)行判斷,再分類處理:如為查詢語句,需將結(jié)果集中的所有行、列數(shù)據(jù)顯示輸出;若是增刪改語句,除執(zhí)行對應(yīng)操作外,還要輸出“增加(修改、刪除)xx條記錄”。*/publicvoidexecute(ConnectionconnString,Stringsql){….}}之后,請你創(chuàng)建一個DBTest類,使用有關(guān)參數(shù)和SQL語句來操作一個具體的數(shù)據(jù)庫,以檢驗MyDB類的功能。(提示:①可調(diào)用String類startsWith(Stringprefix)方法來判斷sql參數(shù)是屬于select、insert、update、delete語句中的哪一種,再執(zhí)行對應(yīng)操作;②執(zhí)行查詢語句時,要輸出結(jié)果集的內(nèi)容,這需要用到輸出列的數(shù)目、名稱或序號、各列的數(shù)據(jù)類型等內(nèi)容。由于select語句是以參數(shù)方式提供,編寫程序時無法得到有關(guān)信息,可求助“元數(shù)據(jù)”來實現(xiàn),由ResultSet對象調(diào)用getMetaData()方法可得到Re

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論