




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
JDBC基礎(chǔ)知識(shí)了解JDBC的概念及必要性了解JDBC驅(qū)動(dòng)程序類型理解JDBC程序的結(jié)構(gòu)運(yùn)用JDBC進(jìn)行數(shù)據(jù)庫編程
23
客戶機(jī)/服務(wù)器應(yīng)用程序數(shù)據(jù)庫編程ODBCJDBC兩個(gè)常用的API數(shù)據(jù)庫執(zhí)行SQL語句檢索查詢結(jié)果4數(shù)據(jù)庫客戶機(jī)/服務(wù)器GUI應(yīng)用程序ODBC(開放式數(shù)據(jù)庫連接)(Microsoft提供)插入刪除修改應(yīng)用程序編程接口查詢5JDBC(Java數(shù)據(jù)庫連接)(sun公司提供)Java應(yīng)用程序編程接口Java應(yīng)用程序數(shù)據(jù)庫插入修改刪除查詢6JDBC驅(qū)動(dòng)程序的類型JDBC-ODBC橋驅(qū)動(dòng)程序及ODBC驅(qū)動(dòng)程序
本地API部分Java驅(qū)動(dòng)程序
JDBC-Net純Java驅(qū)動(dòng)程序
本地協(xié)議純Java驅(qū)動(dòng)程序
7
Java程序JDBC驅(qū)動(dòng)程序數(shù)據(jù)庫SQL命令結(jié)果8應(yīng)用層DriverStatementResultSetConnection各接口驅(qū)動(dòng)層接口名說明
Connection此接口表示與數(shù)據(jù)的連接PreparedStatement此接口用于執(zhí)行預(yù)編譯的SQL語句
ResultSet此接口表示了查詢出來的數(shù)據(jù)庫數(shù)據(jù)結(jié)果集Statement此接口用于執(zhí)行SQL語句并將數(shù)據(jù)檢索到ResultSet中
9類名說明
DriverManager此類用于加載和卸載各種驅(qū)動(dòng)程序并建立與數(shù)據(jù)庫的連接Date此類包含將SQL日期格式轉(zhuǎn)換成Java
日期格式的各種方法1011SQLException/***fooBar*/publicvoidfoobar()throwsSQLException{…… thrownewSQLException(“剛引發(fā)了一個(gè)SQLException”);}……try{fooBar();}catch(SQLExceptionex){System.out.println(“已捕獲一個(gè)SQLException異常!”);System.out.println(“消息:“+ex.getMessage());System.out.println(“錯(cuò)誤代碼:“+ex.getErrorCode());} …調(diào)用fooBar12開始導(dǎo)入java.sql包加載并注冊驅(qū)動(dòng)程序創(chuàng)建一個(gè)Connection對象創(chuàng)建一個(gè)Statement對象執(zhí)行語句關(guān)閉ResultSet對象關(guān)閉Statement對象關(guān)閉連接結(jié)束使用ResultSet對象13Class.forName("oracle.jdbc.driver.OracleDriver");conn=DriverManager.getConnection("jdbc:oracle:thin:@:1521:dfrz",dbUser,dbPassword);PreparedStatementstat=conn.prepareStatement("selectto_char(sysdate,'yyyymmddhh24miss')fromdual");ResultSetrs=stat.executeQuery();SimpleDateFormatdf=newSimpleDateFormat("yyyyMMddHHmmss");DatedbDate;if(rs.next())dbDate=df.parse(rs.getString(1));elsedbDate=null;rs.close();stat.close();returndbDate;14SQL查詢字符串executeQuery()方法作為參數(shù)傳遞ResultSet返回查詢數(shù)據(jù)SELECTname,email,phoneFROMcolleagues;使用SQL語句,查詢可編寫為:Stringstr="SELECTemp_id,lname,fnameFROMcolleagues";Statementstmt=con.createStatement();ResultSetrset=stmt.executeQuery(str);使用JDBC編寫此查詢,則代碼為:Statement接口15PreparedStatement接口(預(yù)編譯的SQL語句)PreparedStatement
用于提高運(yùn)行時(shí)效率執(zhí)行PreparedStatement對象比執(zhí)行Statement對象快Statement接口16ResultSet對象完全依賴于Statement對象和Connection
對象每次執(zhí)行SQL語句時(shí),都會(huì)用新的結(jié)果重寫結(jié)果集當(dāng)相關(guān)的Statement關(guān)閉時(shí),ResultSet對象會(huì)自動(dòng)關(guān)閉Next()get<Type>()此方法將光標(biāo)從當(dāng)前位置下移一行從ResultSet對象返回?cái)?shù)據(jù)17它演示對當(dāng)前行的處理使用next()方法時(shí),記錄是按順序處理的必須按照數(shù)據(jù)返回的順序處理每行中的數(shù)據(jù)…ResultSetrset=stmt.getResultSet();
while(rset.next()){Stringdept_name=rset.getString(1);} …18演示對當(dāng)前列的處理使用
get<Type>()
方法可以直接訪問列…Statementstmt=con.createStatement();Stmt.executeQuery("Selectemp_id,fnamefromEmployee");ResultSetrset=stmt.getResultSet();while(rset.next()){Stringename=rset.getString("fname");System.out.println(ename);}…以下代碼顯示值
1被作為參數(shù)傳遞給
getString()方法,這實(shí)際上指列
emp_id的索引19可滾動(dòng)不可滾動(dòng)光標(biāo)僅向前移動(dòng)光標(biāo)可前后移動(dòng),也可移動(dòng)至與當(dāng)前位置相對的某一行如果對數(shù)據(jù)庫做了更改,則新值是可見的結(jié)果集TYPE_SCROLL_INSENSITIVETYPE_SCROLL_SENSITIVETYPE_FORWARD_ONLYJDBC概念的理解使用Class.forName()方法可以將驅(qū)動(dòng)程序加載到Java解釋器中使用
DriverManager
類的
getConnection()
方法和Connection對象的
createStatement()
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年綠色節(jié)能型辦公室裝修及配套路燈采購合同
- 二零二五年度干股合作協(xié)議及管理細(xì)則
- 2025年度茶葉加工廠租賃及茶葉質(zhì)量安全監(jiān)控合同
- 二零二五年度汽車事故私了賠償協(xié)議書(含交通違法處理)
- 2025年鈾及其轉(zhuǎn)化物合作協(xié)議書
- 二零二五年度窗簾行業(yè)市場推廣合作協(xié)議
- 二零二五年度地下車位租賃與車位預(yù)約管理系統(tǒng)合同
- 二零二五年度墻紙墻布品牌授權(quán)代理合同
- 2025年機(jī)關(guān)單位餐飲合作協(xié)議書
- 二零二五年度手摩托俱樂部賽事冠名權(quán)買賣合同
- 武漢市2024-2025學(xué)年度高三元月調(diào)考?xì)v史試題卷(含答案)
- 《慢性腎臟病相關(guān)心肌病綜合管理中國專家共識(shí)(2024版)》解讀
- DCMM解析版練習(xí)試題附答案
- 《工程建設(shè)質(zhì)量信得過班組建設(shè)活動(dòng)準(zhǔn)則》
- 金融企業(yè)會(huì)計(jì)第八章證券公司業(yè)務(wù)的核算
- 2025新外研社版英語七年級下單詞默寫表
- 2024下半年上海事業(yè)單位招考易考易錯(cuò)模擬試題(共500題)試卷后附參考答案
- 網(wǎng)絡(luò)安全風(fēng)險(xiǎn)評估行業(yè)研究報(bào)告
- 新能源汽車充電設(shè)施安全檢查記錄表
- GB/T 38153.1-2024印刷技術(shù)測試印樣的實(shí)驗(yàn)室制備第1部分:漿狀油墨
- 2024高考物理考試大綱
評論
0/150
提交評論