資源描述:
《《數(shù)據(jù)庫訪問接口》PPT課件》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、第五章數(shù)據(jù)庫訪問接口第五章數(shù)據(jù)庫訪問接口5.1概述5.2ODBC與DAO對象5.3JDBC原理與應(yīng)用5.4OLEDB和ADO5.5數(shù)據(jù)庫中間件5.1概述DBMS是非常復(fù)雜的軟件,編寫程序通過某種數(shù)據(jù)庫專用接口與其通信是非常復(fù)雜的工作,為此,產(chǎn)生了數(shù)據(jù)庫的客戶訪問技術(shù),即數(shù)據(jù)庫訪問技術(shù)。開放的數(shù)據(jù)庫訪問接口為數(shù)據(jù)庫應(yīng)用程序開發(fā)人員訪問與不同的、異構(gòu)的數(shù)據(jù)庫提供了統(tǒng)一的訪問方式,采用這種數(shù)據(jù)庫接口可以通過編寫一段代碼實(shí)現(xiàn)對多種類型數(shù)據(jù)庫的復(fù)雜操作。實(shí)現(xiàn)了開放數(shù)據(jù)庫的互聯(lián),并大大減小了編程的工作量和開發(fā)時(shí)間。目前流行的開放數(shù)據(jù)庫訪問接口有:ODBCJDBCOLED
2、B數(shù)據(jù)庫網(wǎng)關(guān)(SQL網(wǎng)關(guān))。(1)ODBCODBC是Microsoft公司推出的開放數(shù)據(jù)庫接口標(biāo)準(zhǔn)。ODBC為應(yīng)用程序和驅(qū)動(dòng)模塊提供了一個(gè)定義良好的、不依賴于數(shù)據(jù)庫的應(yīng)用程序接口(API)。并且保持了與SQL標(biāo)準(zhǔn)的一致性。使用API時(shí),ODBC通過一個(gè)驅(qū)動(dòng)管理器來判定應(yīng)用程序要連接的數(shù)據(jù)庫的類型,并載入(或卸載)對應(yīng)的ODBC驅(qū)動(dòng)。這樣,就實(shí)現(xiàn)了應(yīng)用程序和數(shù)據(jù)庫之間的相互獨(dú)立,簡化了從Windows操作系統(tǒng)(以及其他一些操作系統(tǒng))到數(shù)據(jù)庫的訪問。目前,越來越多的第三方廠商在設(shè)計(jì)應(yīng)用開發(fā)集成環(huán)境時(shí),積極采用ODBC技術(shù),使應(yīng)用開發(fā)工具可通過ODBC實(shí)現(xiàn)對異構(gòu)數(shù)
3、據(jù)庫的快捷和方便的訪問。(2)JDBCJDBC(JavaDatabaseConnectivity)是JavaSoft提供的第一個(gè)支持lava語言的數(shù)據(jù)庫API.它支持基本SQL功能,在不同的數(shù)據(jù)庫功能模塊的層次上為Java開發(fā)人員提供了一個(gè)支持Java開發(fā)或支持Java應(yīng)用程序運(yùn)行的環(huán)境訪問各種數(shù)據(jù)庫的統(tǒng)一的用戶界面,同時(shí)還提供了多樣化的數(shù)據(jù)連接方式。JDBC主要由兩層組成:JDBC應(yīng)用程序接口(JDBCAPI)和JDBC驅(qū)動(dòng)應(yīng)用程序接口。JDBCAPI提供從應(yīng)用程序到JDBC管理器的通訊,開發(fā)者通過API使用標(biāo)準(zhǔn)Java機(jī)制訪問數(shù)據(jù)庫。數(shù)據(jù)庫供應(yīng)商提供JD
4、BC驅(qū)動(dòng)接口,也可以通過JDBC-ODBC連接橋使用傳統(tǒng)的0DBC連接:(3)OLEDBOLEDB定義了一個(gè)訪問服務(wù)器的集合,通過這些服務(wù)器可以很容易地連接到任意數(shù)目的數(shù)據(jù)源。這樣,開發(fā)者就可以把多種不同的數(shù)據(jù)源作為單一的虛擬數(shù)據(jù)庫來管理。OLEDB允許使用標(biāo)準(zhǔn)的COM接口訪問數(shù)據(jù)。OLEDB為開發(fā)者提供訪問關(guān)系數(shù)據(jù)庫、文件、擴(kuò)展表、電子郵件等數(shù)據(jù)的方法。通過COM接口,開發(fā)者可以使用OLEDB方便地集成面向?qū)ο蟮臄?shù)據(jù)庫和多維數(shù)據(jù)庫。核心思想是生成獨(dú)立的OLEDB組件對象,用以調(diào)度數(shù)據(jù)提供者的各種附加特性和功能。這些獨(dú)立的OLEDB組件叫做“服務(wù)提供者”,允
5、許應(yīng)用程序使用它們實(shí)現(xiàn)不同數(shù)據(jù)聯(lián)合(同構(gòu)的或異構(gòu)的)之間的互聯(lián)。數(shù)據(jù)以單一的視圖的形式存在,而不管它們的數(shù)據(jù)模型是關(guān)系型的、面向?qū)ο蟮?,還是多維的。(4)數(shù)據(jù)庫網(wǎng)關(guān)數(shù)據(jù)庫網(wǎng)關(guān)也叫SQL網(wǎng)關(guān),是一種應(yīng)用程序接口(API),通過使用同一接口提供對運(yùn)行在多種平臺(tái)上的不同數(shù)據(jù)庫的訪問。它們類似于實(shí)際的數(shù)據(jù)庫中間件產(chǎn)品,為開發(fā)者提供訪問任意數(shù)目數(shù)據(jù)庫的接口。數(shù)據(jù)庫網(wǎng)關(guān)把SQL調(diào)用解釋成為標(biāo)準(zhǔn)PAP(FormatandProtocol)格式。PAP格式實(shí)現(xiàn)通用的客戶機(jī)和服務(wù)器連接,也就是異構(gòu)數(shù)據(jù)庫和運(yùn)行平臺(tái)的通用連結(jié)。數(shù)據(jù)庫網(wǎng)關(guān)可以把API調(diào)用直接翻譯成PAP,把請求傳
6、遞到目標(biāo)數(shù)據(jù)庫并翻譯,以便目標(biāo)數(shù)據(jù)庫和平臺(tái)做出響應(yīng)。第五章數(shù)據(jù)庫訪問接口5.1概述5.2ODBC與DAO對象5.3JDBC原理與應(yīng)用5.4OLEDB和ADO5.5數(shù)據(jù)庫中間件5.2ODBC與DAO對象5.2.1ODBC和DAO概述5.2.2ODBC的使用5.2.3DAO的使用5.2.1ODBC和DAO概述(1)ODBC概述ODBC是80年代末90年代初出現(xiàn)的技術(shù),它為編寫關(guān)系數(shù)據(jù)庫的客戶軟件提供了統(tǒng)一的接口。ODBC提供統(tǒng)一的API,可用于處理不同數(shù)據(jù)庫的客戶應(yīng)用程序。使用ODBCAPI的應(yīng)用程序可以與任何具有ODBC驅(qū)動(dòng)程序的關(guān)系數(shù)據(jù)庫進(jìn)行通信。由于ODB
7、C為關(guān)系數(shù)據(jù)庫提供了統(tǒng)一的接口,現(xiàn)在已經(jīng)被廣泛應(yīng)用,并逐漸成為關(guān)系數(shù)據(jù)庫接口的標(biāo)準(zhǔn)。它建立了一組規(guī)范,并提供了一組對數(shù)據(jù)庫訪問的標(biāo)準(zhǔn)API(應(yīng)用程序編程接口)。這些API利用SQL來完成其大部分任務(wù)。ODBC本身也提供了對SQL語言的支持,用戶可以直接將SQL語句送給ODBC。ODBC的最大優(yōu)點(diǎn)是能以統(tǒng)一的方式處理所有的關(guān)系數(shù)據(jù)庫。但是,ODBC僅限于關(guān)系數(shù)據(jù)庫,由于ODBC的關(guān)系型特性,很難使用ODBC與非關(guān)系數(shù)據(jù)源進(jìn)行通信,例如對象數(shù)據(jù)庫、網(wǎng)絡(luò)目錄服務(wù)、電子郵件存儲(chǔ)等。(2)DAO概述DAO(DatabaseAccessObject,數(shù)據(jù)訪問對象)屬于數(shù)
8、據(jù)訪問客戶端。是第一個(gè)面向?qū)ο蟮臄?shù)據(jù)庫訪問接口。DA