第15章 數(shù)據(jù)庫應(yīng)用結(jié)構(gòu)與數(shù)據(jù)訪問接口1_第1頁
第15章 數(shù)據(jù)庫應(yīng)用結(jié)構(gòu)與數(shù)據(jù)訪問接口1_第2頁
第15章 數(shù)據(jù)庫應(yīng)用結(jié)構(gòu)與數(shù)據(jù)訪問接口1_第3頁
第15章 數(shù)據(jù)庫應(yīng)用結(jié)構(gòu)與數(shù)據(jù)訪問接口1_第4頁
第15章 數(shù)據(jù)庫應(yīng)用結(jié)構(gòu)與數(shù)據(jù)訪問接口1_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、數(shù)據(jù)庫原理與應(yīng)用北京聯(lián)合大學(xué)師范學(xué)院計算機系主講:陳漫紅 第15章 數(shù)據(jù)庫應(yīng)用結(jié)構(gòu)與數(shù)據(jù)訪問接口15.1 數(shù)據(jù)庫應(yīng)用結(jié)構(gòu) 數(shù)據(jù)庫應(yīng)用結(jié)構(gòu)是指數(shù)據(jù)庫運行的軟、硬件環(huán)境。通過這個環(huán)境,用戶可以訪問數(shù)據(jù)庫中的數(shù)據(jù)。 四種最常見的應(yīng)用結(jié)構(gòu): 集中式結(jié)構(gòu) 文件服務(wù)器結(jié)構(gòu) 客戶/服務(wù)器結(jié)構(gòu) 互聯(lián)網(wǎng)應(yīng)用結(jié)構(gòu) 15.1.1 集中式應(yīng)用結(jié)構(gòu) 應(yīng)用程序數(shù)據(jù)庫大型機按鍵信息終端字符終端1終端N終端2客戶端優(yōu)點是可以實現(xiàn)集中管理,安全性好。缺點是費用昂貴,不能真正劃分應(yīng)用程序的邏輯。 15.1.2 文件服務(wù)器結(jié)構(gòu) 優(yōu)點在于實現(xiàn)的費用比較低廉,而且配置非常靈活。缺點是,由于所有的應(yīng)用處理都要在客戶端完成,要經(jīng)常在網(wǎng)絡(luò)上

2、傳送大量無用的數(shù)據(jù).因此客戶端的個人計算機必須要有足夠的能力。例如Foxpro. 應(yīng)用程序數(shù)據(jù)庫網(wǎng)絡(luò)文件服務(wù)器文件文件請求工作站1工作站N工作站2客戶端應(yīng)用程序應(yīng)用程序15.1.3 客戶/服務(wù)器結(jié)構(gòu) 優(yōu)點:應(yīng)用程序或應(yīng)用邏輯可以根據(jù)需要劃分在服務(wù)器和客戶工作站中,在完成一個特定任務(wù)時,客戶端工作站上的程序和服務(wù)器上的程序可以協(xié)同工作,同時極大地減少了網(wǎng)絡(luò)流量。 應(yīng)用程序數(shù)據(jù)庫服務(wù)器數(shù)據(jù)請求結(jié)果工作站1工作站N工作站2客戶端應(yīng)用程序應(yīng)用程序15.1.4 互聯(lián)網(wǎng)應(yīng)用結(jié)構(gòu) 優(yōu)點:最終用戶應(yīng)用軟件的安裝和維護都非常簡單,客戶端不再需要安裝、配置應(yīng)用軟件的工作。這些工作只需在Web服務(wù)器上完成,從而減少

3、客戶端與服務(wù)器端軟件配置的不一致以及不同版本應(yīng)用軟件所帶來的問題。 客戶端應(yīng)用程序數(shù)據(jù)庫數(shù)據(jù)庫服務(wù)器頁 面 請求頁面?zhèn)€人機1個人機N個人機2數(shù)據(jù)請求結(jié)果Web服務(wù)器瀏覽器瀏覽器瀏覽器 15.2.1 ODBC 15.2.2 數(shù)據(jù)環(huán)境設(shè)計器 15.2.3 OLE DB和ADO 15.2.4 ADO為OLE DB帶來了什么?15.2.1 ODBC ODBC(開放的數(shù)據(jù)庫互連,Open DataBase Connectivity)是Microsoft公司開發(fā)的一套開放的數(shù)據(jù)庫系統(tǒng)應(yīng)用程序接口規(guī)范, 它為應(yīng)用程序提供了一套高層調(diào)用接口規(guī)范和基于動態(tài)鏈接庫的運行支撐環(huán)境。 使用ODBC開發(fā)數(shù)據(jù)庫應(yīng)用程序時

4、,應(yīng)用程序使用的是標準的ODBC接口和SQL語句,數(shù)據(jù)庫的底層操作由各個數(shù)據(jù)庫管理系統(tǒng)的驅(qū)動程序完成。 ODBC體系結(jié)構(gòu) DBMS1.SQL(專用)DBMSm.SQL(專用)ODBC AP1ODBC APnODBC ODBCAPI DriverDBMS 1DBMS mDB1DBmODBC.SQL(通用)驅(qū) 動 程 序管理器SQL Server驅(qū)動程序Oracle驅(qū)動程序SQL Server數(shù)據(jù)源Oracle數(shù)據(jù)源ODBC提供了在不同數(shù)據(jù)庫環(huán)境下C/S結(jié)構(gòu)的客戶訪問異構(gòu)DBMS的接口.即在異構(gòu)數(shù)據(jù)庫服務(wù)器構(gòu)成的C/S結(jié)構(gòu)中,要訪問不同數(shù)據(jù)庫的數(shù)據(jù),需要一個能連接客戶平臺到不同服務(wù)器的橋梁.建立O

5、DBC數(shù)據(jù)源 數(shù)據(jù)源是指任何一種可以通過ODBC連接的DBMS,包括要訪問的數(shù)據(jù)庫和數(shù)據(jù)庫的運行平臺.數(shù)據(jù)源名屏蔽了數(shù)據(jù)庫服務(wù)器之間的差別.通過定義多個數(shù)據(jù)源讓每個數(shù)據(jù)源指向一個DBMS,就可以實現(xiàn)在應(yīng)用程序中同時訪問多個DBMS的目的. 利用控制面板建立:建立的方法見P231-234 ODBC數(shù)據(jù)源類型 用戶數(shù)據(jù)源:只能用于當(dāng)前定義此數(shù)據(jù)源的機器 系統(tǒng)數(shù)據(jù)源:可用于當(dāng)前機器上的所有用戶. 文件數(shù)據(jù)源:是將用戶定義的數(shù)據(jù)源信息保存到一個文件中,并可被不同機器上安裝了相同驅(qū)動程序的用戶共享.連接SQL Server數(shù)據(jù)庫 可通過VB6.0提供的數(shù)據(jù)庫管理器,連接SQL Server數(shù)據(jù)庫,步驟如

6、下:1.在VB6.0界面中,執(zhí)行”外接程序”菜單中的”可視化數(shù)據(jù)管理器”命令.2.在”文件”菜單中執(zhí)行”新建”可新建數(shù)據(jù)庫,執(zhí)行”打開”命令可打開指定的數(shù)據(jù)庫,3.在SQL文本框中,輸入SQL語句對表中的記錄進行查詢,插入,刪除,修改操作,并選中”執(zhí)行”按鈕執(zhí)行.15.2.2 數(shù)據(jù)環(huán)境設(shè)計器數(shù)據(jù)環(huán)境設(shè)計器(Data Environment)用于建立數(shù)據(jù)庫連接和定義命令的圖形接口,其使用方法如下:1.給工程添加數(shù)據(jù)環(huán)境設(shè)計器 在VB6.0的”工程”菜單中選擇”添加Data Environment”菜單項,2.建立與數(shù)據(jù)庫的連接 在數(shù)據(jù)環(huán)境設(shè)計器窗口的Connection對象圖標上單擊鼠標右鍵,出

7、現(xiàn)一快捷菜單,選擇”屬性”菜單項,出現(xiàn)建立數(shù)據(jù)庫連接的界面,對于”提供者”選項卡選擇”Microsoft OLE DB Provider for SQL Server”;對于”連接”選項卡,設(shè)置各項連接屬性.3.定義命令對象 一旦創(chuàng)建了與數(shù)據(jù)庫的連接即可使用Command對象對數(shù)據(jù)庫中的數(shù)據(jù)進行操作,定義方法為:(1)在數(shù)據(jù)庫環(huán)境設(shè)計器界面中單擊”Command”圖標,在屬性窗口可更改默認的Command對象名,在此對象名為Command1(2)在創(chuàng)建的Command對象上單擊鼠標右鍵,出現(xiàn)一快捷菜單,單擊”屬性”菜單項,在Command1屬性窗口中進行設(shè)置.4.創(chuàng)建用戶界面使用數(shù)據(jù)環(huán)境的Co

8、mmand對象創(chuàng)建一用戶界面例如設(shè)計一截面,用于對教學(xué)管理數(shù)據(jù)庫中Student表的數(shù)據(jù)進行查詢對按鈕”command1”的Click事件添加如下代碼:Private Sub Command1_Click()With DataEnvironment1.rsCommand1.MoveNext 訪問下一記錄If .EOF Then .MoveFirst 訪問第一條記錄End IfEnd WithEnd Sub對按鈕”Command2”的Click事件添加代碼如下:Private Sub Command2_Click()With DataEnvironment1.rsCommand1 .MovePr

9、evious 訪問上一條記錄 If .BOF Then .MoveLast 訪問最后一條記錄 End If End WithEnd Sub15.2.3 OLE DB和ADO OLE DB是一系列直接處理數(shù)據(jù)的接口。它建立在COM之上,是Microsoft提供的一種在不同數(shù)據(jù)進程間進行通信的方式。 ADO和OLE DB實際上是同一種技術(shù)的兩種表現(xiàn)形式。OLE DB提供的是通過COM接口的底層數(shù)據(jù)接口,而ADO提供的是一個對象模型,它簡化了應(yīng)用程序中使用OLE DB獲取數(shù)據(jù)的過程。 OLE DB定義了三種類型的數(shù)據(jù)訪問組件: 數(shù)據(jù)提供者:包含數(shù)據(jù)并將數(shù)據(jù)輸出到其他組件中去(SQL Server)

10、數(shù)據(jù)消費者:使用包含在數(shù)據(jù)提供者中的數(shù)據(jù)(VC+) 服務(wù)組件:處理和傳輸數(shù)據(jù)OLE DB庫中包含的核心組件 Data Conversion Library:支持從一種數(shù)據(jù)類型轉(zhuǎn)換到另一種數(shù)據(jù)類型。 Row Position對象:保留記錄集中對當(dāng)前行的跟蹤。此功能允許其他組件約定它們當(dāng)前使用的是什么數(shù)據(jù)。 Root Enumerator:允許搜索已知OLE DB數(shù)據(jù)提供者的注冊信息。 IdataInitialize接口:包含允許使用數(shù)據(jù)源的功能。 IDBPromptInitialize接口:包含允許應(yīng)用程序使用Data Link屬性對話框的功能。 使用ADO和OLE DB獲取數(shù)據(jù)的體系結(jié)構(gòu) 前

11、端 應(yīng) 用 程 序ADOOLE DB提供者 提供者 提供者 提供者 VSAM/ISAME-mail消息目錄服務(wù)ODBC 提供者 文件系統(tǒng)關(guān) 系 數(shù)據(jù)庫15.2.3 ADO為OLE DB帶來了什么? ADO是建筑在OLE DB之上的高層接口集。 ADO是介于OLE DB底層接口和應(yīng)用程序之間的接口,它避免了開發(fā)人員直接使用OLE DB底層接口的麻煩。 ADO簡化了OLE DB模型。OLE DB是一個面向API的調(diào)用,ADO在OLE DB上面設(shè)置了另外一層。 ADO層是面向?qū)ο蟮腁PI,它只需開發(fā)者掌握幾個簡單對象的方法和屬性,比在OLE DB API中直接調(diào)用函數(shù)要簡單的多。ADO對象模型 ConnectionErrorCommandParameterRecordsetFieldPropertyPropertyPropertyProperty各對象作用 Connectio

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論