程序代碼源代碼數(shù)據(jù)庫編程_第1頁
程序代碼源代碼數(shù)據(jù)庫編程_第2頁
程序代碼源代碼數(shù)據(jù)庫編程_第3頁
程序代碼源代碼數(shù)據(jù)庫編程_第4頁
程序代碼源代碼數(shù)據(jù)庫編程_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

20、JDBC2001_JDBCJDBC的主要作用,以及開發(fā)中幾種不同的數(shù)據(jù)庫連接模式2002_OracleJDBCJava提供的數(shù)據(jù)庫操作標(biāo)準(zhǔn),基于此標(biāo)準(zhǔn)可以方便的實現(xiàn)各類數(shù)據(jù)JDBC進(jìn)行數(shù)據(jù)庫連接,同時分Oracle中常見的錯誤及解決方式packageimportjava.sql.Connection;importpackageimportjava.sql.Connection;importjava.sql.DriverManager;publicclassJDBCDemo{privatestaticfinalStringDATABASE_DRVIER=privatestaticfinalStringDATABASE_USER="scott";privatestaticfinalStringDATABASE_PASSWORD="tiger";publicstaticvoidmain(String[]args)throwsException{Connectionconn conn=DATABASE_USER }}2003_StatementStatement接StatementDROPTABLEDROPTABLEnewsPURGEDROPSEQUENCEnews_seq;CREATESEQUENCEnews_seq;CREATETABLEnews( NUMBER VARCHAR2(30) NUMBER NUMBER CLOB DATECONSTRAINTpk_nidPRIMARY)2004_StatementSQLStatementpackagepackageimportjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.Statement;publicclassJDBCDemo{privatestaticfinalStringDATABASE_DRVIER=privatestaticfinalStringDATABASE_USER=privatestaticfinalStringDATABASE_PASSWORD=publicstaticvoidmain(String[]args)throwsExceptionStringsql="INSERTINTOnews(nid,title,read,price,content,pubdate)VALUES+"(news_seq.nextval,'MLDN-News',10,9.15,+"'極限 成立了',+"TO_DATE('2016-02-17','yyyy-mm-dd'))"Connectionconn=null;conn=DATABASE_USER,Statementstmt=conn.createStatement();intcount=stmt.executeUpdate(sql);System.out.println("更新操作影響的數(shù)據(jù)行數(shù):SQL}}packagepackageimportjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.Statement;publicclassJDBCDemo{privatestaticfinalStringDATABASE_DRVIER=privatestaticfinalStringDATABASE_USER=privatestaticfinalStringDATABASE_PASSWORD=publicstaticvoidmain(String[]args)throwsExceptionStringsqlUPDATEnewsSETtitle='極限IT架構(gòu)師',}+"read=99998WHEREnid=5"Connectionconn=null;conn=DATABASE_USER,Statementstmt=conn.createStatement()intcount=stmt.executeUpdate(sql);System.out.println("更新操作影響的數(shù)據(jù)行數(shù):count);}packageimportjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.Statement;publicclassJDBCDemo{privatestaticfinalStringDATABASE_DRVIER=privatestaticfinalStringDATABASE_USER="scott";privatestaticfinalStringDATABASE_PASSWORD="tiger";publicstaticvoidmain(String[]args)throwsException{StringsqlDELETEFROMnewsWHEREnidIN11,13,15)";//編寫刪除SQLConnectionconn conn=DATABASE_USER Statementstmtconn.createStatement intcount=stmt.executeUpdate(sql); //返回更新數(shù)據(jù)行數(shù)System.out.println("更新操作影響的數(shù)據(jù)行數(shù):"+count); //輸出數(shù)據(jù)行數(shù) //關(guān)閉數(shù)據(jù)庫連接}}名稱2005_Java提供了標(biāo)準(zhǔn)操作接口,本課程主要講解如何利用Statementpackageimportjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.ResultSet;importjava.sql.Statement;importjava.util.Date;publicclassJDBCDemoprivatestaticfinalStringDATABASE_DRVIER=privatestaticfinalStringDATABASE_USER="scott";privatestaticfinalStringDATABASE_PASSWORD="tiger";publicstaticvoidmain(String[]args)throwsException{此處編寫的SQLStringsql="SELECTnid,title,read,price,content,pubdateFROMnews";Connectionconn=null; 保存數(shù)據(jù)庫連接 conn=DATABASE_USER Statementstmtconn.createStatement ResultSetrs while(rs.next intnid 獲取第1Stringtitle 獲取第2intread 獲取第3doubleprice 獲取第4Stringcontent 獲取第5Datepubdate 獲取第6System.out.println(nid、title、read"、"+price+"、"+content+"、"+pubdate);} }}packageimportjava.sql.Connection;packageimportjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.ResultSet;importjava.sql.Statement;importjava.util.Date;publicclassJDBCDemoprivatestaticfinalStringDATABASE_DRVIER=privatestaticfinalStringDATABASE_USER=privatestaticfinalStringDATABASE_PASSWORD=publicstaticvoidmain(String[]args)throwsException此處編寫的SQLStringsql="SELECT*FROMnews"Connectionconn=conn=DATABASE_USER,Statementstmt=conn.createStatement();ResultSetrs=stmt.executeQuery(sql);while(rs.next()){intnid=Stringtitle=intread=doubleprice=rs.getDouble("price");Stringcontent=rs.getString("content");Datepubdate=rs.getDate("pubdate");System.out.println(nid、title、read"、price、content、}獲取第1獲取第2獲取第3獲取第4獲取第5獲取第6}}2006_StatementStatementSQLSQL語句所以開發(fā)中會存在有安全隱患,本課程主要講解Statement接口的在實際開發(fā)中存在的問packagepackageimportpackageimportjava.sql.Connection;importpackageimportjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.Statement;publicclassJDBCDemo{privatestaticfinalStringDATABASE_DRVIER=privatestaticfinalStringDATABASE_USER=privatestaticfinalStringDATABASE_PASSWORD=publicstaticvoidmain(String[]args)throwsExceptionStringtitle=intread=99;doubleprice=99.8;Stringcontent="'極限IT架構(gòu)師存在有"Stringpubdate2017-09-15 日期通過StringStringsql="INSERTINTOnews(nid,title,read,price,content,pubdate)VALUES+"(news_seq.nextval,'"++"',"+read+","+price+","+"'"++"',TO_DATE('"+pubdate+"','yyyy-mm-Connectionconn=null;conn=DATABASE_USER,Statementstmt=conn.createStatement()intcount=stmt.executeUpdate(sql);System.out.println("更新操作影響的數(shù)據(jù)行數(shù):count);拼湊執(zhí)行輸出拼湊后的}}名稱2007_PreparedStatementPreparedStatement繼承結(jié)構(gòu)與實例化處理,并且講解了如何PreparedStatement實現(xiàn)安全的數(shù)據(jù)更新操作范例:PreparedStatementimportjava.sql.DriverManager;importjava.sql.PreparedStatement;publicclassJDBCDemo{privatestaticfinalStringDATABASE_DRVIER=privatestaticfinalStringDATABASE_USER="scott";privatestaticfinalStringDATABASE_PASSWORD="tiger";publicstaticvoidmain(String[]args)throwsException{Stringtitle="MLDN'極限IT架構(gòu)師" //存在有intread=99doubleprice=99.8Stringcontent= "java.util.Datepubdatenewjava.util.Date 需要先定義SQL語句之后才可以創(chuàng)建PreparedStatementStringsql="INSERTINTOnews(nid,title,read,price,content,pubdate)VALUESnews_seq.nextval 使用“?”Connectionconn conn=DATABASE_USER,PreparedStatementpstmt=conn.prepareStatement(sql);pstmt.setString(1,title);pstmt.setInt(2,read);pstmt.setDouble(3,price);pstmt.setString(4,content);pstmt.setDate(5,newjava.sql.Date(pubdate.getTime()));intcount=pstmt.executeUpdate();System.out.println("更新操作影響的數(shù)據(jù)行數(shù):"+count);}}名稱2008_PreparedStatementPreparedStatement是主要的數(shù)據(jù)庫操作對象,而在數(shù)據(jù)庫操作中查PreparedStatement實現(xiàn)數(shù)據(jù)查importimportimportimportjava.sql.ResultSet;importjava.util.Date;publicclassJDBCDemo{privatestaticfinalStringDATABASE_DRVIER=privatestaticfinalStringDATABASE_USER=privatestaticfinalStringDATABASE_PASSWORD=publicstaticvoidmain(String[]args)throwsExceptionStringsql="SELECTnid,title,read,price,content,pubdateFROMnews"Connectionconn=conn=DATABASE_USER,PreparedStatementpstmt=conn.prepareStatement(sql);ResultSetrs=pstmt.executeQuery();while(rs.next())intnid=Stringtitle=rs.getString(2);intread=rs.getInt(3);doubleprice=rs.getDouble(4);Stringcontent=rs.getString(5);Datepubdate=rs.getDate(6);System.out.println(nid、title、read"、price、content、}}}packageimportjava.sql.Connection;packageimportjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.PreparedStatement;importjava.sql.ResultSet;importpublicclassJDBCDemoprivatestaticfinalStringDATABASE_DRVIER=privatestaticfinalStringDATABASE_USER="scott";privatestaticfinalStringDATABASE_PASSWORD="tiger";publicstaticvoidmain(String[]args)throwsException{Stringsql="SELECTnid,title,read,price,content,pubdateFROMnewsWHEREnid 使用占位符設(shè)置idConnectionconn conn=DATABASE_USER PreparedStatementpstmtconn.prepareStatement(sql) pstmt.setInt(1 設(shè)置nidResultSetrs if(rs.next intnid 獲取第1Stringtitle 獲取第2intread 獲取第3doubleprice 獲取第4Stringcontent 獲取第5Datepubdate 獲取第6System.out.println(nid、title、read"、price、content、} }} packagepackageimportjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.PreparedStatement;importjava.sql.ResultSet;importpublicclassJDBCDemoprivatestaticfinalStringDATABASE_DRVIER=privatestaticfinalStringDATABASE_USER=privatestaticfinalStringDATABASE_PASSWORD=publicstaticvoidmain(String[]args)throwsExceptionintcurrentPage=2intlineSize=5;Stringcolumn="title";StringkeyWord="MLDN"Stringsql="SELECT*FROM(+"SELECTnid,title,read,price,content,pubdate,ROWNUMrn+"FROMnewsWHERE"+column+"LIKE?ANDROWNUM<=?ORDERBYnid)"+"WHEREtemp.rn>?"Connectionconn=conn=DATABASE_USER,PreparedStatementpstmt=conn.prepareStatement(sql);pstmt.setString(1,"%"+keyWord+"%");pstmt.setInt(2,currentPage*lineSize);pstmt.setInt(3,(current1)*lineSize);ResultSetrs=pstmt.executeQuery();while(rs.next())intnid=Stringtitle=rs.getString(2);intread=rs.getInt(3);doubleprice=rs.getDouble(4);Stringcontent=rs.getString(5);Datepubdate=rs.getDate(6);System.out.println(nid、title、read"、price、content、}}}packagepackageimportjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.PreparedStatement;importjava.sql.ResultSet;publicclassJDBCDemoprivatestaticfinalStringDATABASE_DRVIER=privatestaticfinalStringDATABASE_USER=privatestaticfinalStringDATABASE_PASSWORD=publicstaticvoidmain(String[]args)throwsException{Stringcolumn="title";StringkeyWord="MLDN"Stringsql="SELECTCOUNT(*)FROMnewsWHERE"+column+"LIKE?"Connectionconn=conn=DATABASE_USER,PreparedStatementpstmt=conn.prepareStatement(sql);pstmt.setString(1,"%"+keyWord+"%");ResultSetrs=if(rs.next())longcount=rs.getLong(1)COUNT()System.out.println("符合條件的數(shù)據(jù)量:} }}2009_單SQLJDBCStatement與PreparedStatement批處理的功packageimportjava.sql.Connection;importpackageimportjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.Statement;importjava.util.Arrays;publicclassJDBCDemo{privatestaticfinalStringDATABASE_DRVIER=privatestaticfinalStringDATABASE_USER=privatestaticfinalStringDATABASE_PASSWORD=publicstaticvoidmain(String[]args)throwsException{Connectionconn=null;conn=DATABASE_USER,Statementstmt=conn.createStatement()stmt.addBatch("INSERTINTOnews(nid,title)VALUES(news_seq.nextval,'MLDN-stmt.addBatch("INSERTINTOnewsnid,titleVALUESnews_seq.nextval,'MLDN-B')");stmt.addBatch("INSERTINTOnewsnid,titleVALUESnews_seq.nextval,'MLDN-C')");stmt.addBatch("INSERTINTOnewsnid,titleVALUESnews_seq.nextval,'MLDN-D')");stmt.addBatch("INSERTINTOnewsnid,titleVALUESnews_seq.nextval,'MLDN-E')");intresult[]=stmt.executeBatch(); //執(zhí)行批處理System.out.println("批量更新結(jié)果:"+Arrays.toString(result)); }}packageimportjava.sql.Connection;packageimportjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.PreparedStatement;importjava.util.Arrays;publicclassJDBCDemoprivatestaticfinalStringDATABASE_DRVIER=privatestaticfinalStringDATABASE_USER=privatestaticfinalStringDATABASE_PASSWO

溫馨提示

  • 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

提交評論