java13(數(shù)據(jù)庫編程).ppt_第1頁
java13(數(shù)據(jù)庫編程).ppt_第2頁
java13(數(shù)據(jù)庫編程).ppt_第3頁
java13(數(shù)據(jù)庫編程).ppt_第4頁
java13(數(shù)據(jù)庫編程).ppt_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、數(shù)據(jù)庫編程,JDBC概述,JDBC (Java Database Connectivity)。 Java語言有著廣泛的應用前景,其中一個重要的方面就是與各類數(shù)據(jù)庫連接查詢的SQL語句的實現(xiàn)。 SQL是一個綜合的、通用的、功能極強的關系數(shù)據(jù)庫語言,它包括數(shù)據(jù)定義、數(shù)據(jù)操縱、數(shù)據(jù)管理、存取保護和處理控制等多種功能。利用表、索引、碼、行、列等來確定存儲位置。 SQL語言本身并不是一個很完整的編程語言,一般它都與其他編程語言結合起來使用,JDBC就是將java語言與SQL結合的一個很好的編程接口。,JDBC概述,JDBC庫作為執(zhí)行SQL語句的接口,它允許大量的程序針對JDBC庫接口編程而不需要過多的擔

2、心應用程序使用的是什么數(shù)據(jù)庫。 JDBC應用程序與其使用的特定類型的數(shù)據(jù)庫系統(tǒng)之間有很好的隔離,因此不需要針對特定的數(shù)據(jù)庫重新編寫。,JDBC概述,JDBC概述,Java應用程序通過JDBC API(java.sql包)與數(shù)據(jù)庫連接,而實際的動作則是由JDBC驅動程序管理器(JDBC Driver Manager)通過JDBC驅動程序與數(shù)據(jù)庫系統(tǒng)進行連接。 真正提供存取數(shù)據(jù)庫功能的是JDBC驅動程序,用戶如果想要存取某一種具體的數(shù)據(jù)庫系統(tǒng)中存儲的數(shù)據(jù),就必須要擁有對應于該數(shù)據(jù)庫系統(tǒng)的驅動程序。 JDBC提供的主要功能如下: (1) 同一個數(shù)據(jù)庫建立連接; (2) 向數(shù)據(jù)庫發(fā)送SQL語句; (3

3、) 處理數(shù)據(jù)庫返回的結果。,數(shù)據(jù)庫連接,每個JDBC應用程序至少要有一個JDBC驅動程序版本,JDBC驅動程序是Driver接口類的實現(xiàn)。 Driver類是驅動程序廠家實現(xiàn)的接口,Driver使DriverManager和JDBC應用程序層可以獨立于具體的數(shù)據(jù)庫系統(tǒng)。 通過java.sql 庫提供的統(tǒng)一接口,使得可以在java環(huán)境下不必對程序作大規(guī)模的修改,只要更改相應的驅動程序,即可實現(xiàn)對各類數(shù)據(jù)庫的操作,JDBC API,java.sql.DriveManager負責裝載、拆除驅動程序,負責連接驅動程序。 java.sql.Connection實現(xiàn)對某一數(shù)據(jù)庫的連接功能(建立連接)。 ja

4、va.sql.Statement 在一個給定的連接中作為執(zhí)行SQL語句的容器。 java.sql.PreparedStatement用于執(zhí)行預編譯的SQL聲明 java.sql.CallableStatement用于執(zhí)行數(shù)據(jù)庫中存儲過程的調(diào)用 java.sql.ResultSet 保存SQL語句執(zhí)行結果,編寫JDBC程序的步驟,加載JDBC驅動程序 創(chuàng)建數(shù)據(jù)庫連接 執(zhí)行SQL語句 接收并處理SQL的返回結果 關閉創(chuàng)建的各個對象,JDBC編程模型,JDBC編程舉例,String className=sun.jdbc.odbc.JdbcOdbcDriver; Class.forName(class

5、Name); String url=jdbc:odbc:mydsn Connection con=DriverManager.getConnection(url); Statement stmt=con.createStatement(); String sql=select * from authors; ResultSet rs=stmt.executeQuery(sql); while(rs.next() System.out.println(rs.getString(1); rs.close(); stmt.close(); con.close();;,DriverManager,JD

6、BC數(shù)據(jù)庫驅動程序由實現(xiàn)了Driver接口的類定義。 DriverManager類負責建立與數(shù)據(jù)源的連接,通過JDBC驅動程序進行訪問。 為了使用你想要使用的驅動程序,可以通過調(diào)用Class類中的靜態(tài)方法forName(),傳遞一個String對象作為參數(shù),其中包含著該驅動程序的類名,這樣可以明確裝入驅動程序。 如果無法找到指定的驅動程序類名,forName()方法會拋出類型未ClassNotFoundException的異常。 每個驅動程序類一般情況下都會在裝入的時候生成一個自身的實例,并且通過自動調(diào)用DriverManager類方法注冊這個實例。,JDBC-ODBC橋,JDBC-ODBC橋

7、是一種類型的JDBC驅動程序,它通過將JDBC操作轉換為ODBC(Open DataBase Connectivity)操作來實現(xiàn)JDBC操作 JDBC-ODBC橋驅動程序由JavaSoft公司提出,Intersolv公司研制。提出這種類型驅動程序的原因,是由于ODBC已經(jīng)成為數(shù)據(jù)庫訪問的業(yè)界標準,并得到了廣泛應用。利用JDBC-ODBC橋可以使程序開發(fā)人員不需要學習更多的知識就可以編寫JDBC應用程序,并能夠充分利用現(xiàn)有的大量ODBC數(shù)據(jù)源。,JDBC-ODBC橋,JDBC-ODBC橋驅動程序可以使JDBC能夠訪問幾乎所有類型的數(shù)據(jù)庫,它隨著sun.jdbc.odbc包與Java 2 SDK一起自動安裝,無需另外的的特殊配置。 當我們加載的類名為:sun.jdbc.odbc.JdbcOdbcDriver時,就意味著我們使用了JDBC-ODBC橋的方式來訪問數(shù)據(jù)庫,JDBC URL,JDBC URL提供了一種標識數(shù)據(jù)庫的方法,可以使相

溫馨提示

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

評論

0/150

提交評論