第十八章_ADO數(shù)據(jù)庫編程.ppt_第1頁
第十八章_ADO數(shù)據(jù)庫編程.ppt_第2頁
第十八章_ADO數(shù)據(jù)庫編程.ppt_第3頁
第十八章_ADO數(shù)據(jù)庫編程.ppt_第4頁
第十八章_ADO數(shù)據(jù)庫編程.ppt_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、第十八講 ADO數(shù)據(jù)庫編程,胡小江 e-mail:jtclass,課程內(nèi)容安排,ADO技術(shù)概述 ADO對(duì)象模型 綜合練習(xí) 思考和習(xí)題,ADO技術(shù)概述,ADO(ActiveX Data Object)ActiveX數(shù)據(jù)對(duì)象,為用戶提供訪問各種數(shù)據(jù)類型的連接機(jī)制。ADO可以使用各種ODBC數(shù)據(jù)源,也就說ADO不僅適合于SQL Server、Access等數(shù)據(jù)庫類型的應(yīng)用程序,也適合于Excel表格、文本文件、圖形文件和無格式的數(shù)據(jù)文件。ADO數(shù)據(jù)庫編程是Visual Basic 6.0中最常用的編程方法之一。,在了解ADO的概念之前,首先來看這樣一個(gè)問題:應(yīng)用程序所要處理的數(shù)據(jù)源可能很簡(jiǎn)單,就像字

2、符串,也可能很復(fù)雜,或者就是一組沒有定型的數(shù)據(jù)源。一般的用戶希望能夠有簡(jiǎn)單、統(tǒng)一的應(yīng)用程序編程接口,也就是常說的API,使應(yīng)用程序能夠靈活地訪問和修改各種各樣的數(shù)據(jù)源。甚至希望,應(yīng)用程序編程接口(API)不要預(yù)先設(shè)定訪問和操作數(shù)據(jù)源的方式,這是廣大用戶最希望看到的。 通過ADO,用戶可以很方便地解決前面所面臨的問題,而ADO就是利用“對(duì)象”的概念將具體的操作細(xì)節(jié)隱藏起來,用戶在使用ADO對(duì)象時(shí)只需通過訪問對(duì)象的“屬性”、“方法”及“事件”進(jìn)行操作即可,如圖18.1所示。,Visual Basic 6.0中捆綁了ADO對(duì)象,使用ADO對(duì)象之前應(yīng)該通過“工程”“引用”命令,選擇“Microsoft

3、 ActiveX Data Object 2.5 Library”列表項(xiàng),然后單擊“確定”按鈕,將ADO對(duì)象添加到工程中。,ADO對(duì)象模型,ADO對(duì)象模型中共包含了9個(gè)對(duì)象元素,其中包括了Connection對(duì)象、Command對(duì)象、Recordset對(duì)象、Field對(duì)象、Stream對(duì)象、Property對(duì)象、Parameter對(duì)象、Record對(duì)象及Error對(duì)象,這些都是數(shù)據(jù)庫應(yīng)用程序設(shè)計(jì)工程中用戶需要掌握的最基本的對(duì)象元素。,Connection對(duì)象,Connection對(duì)象用于連接數(shù)據(jù)源。在數(shù)據(jù)庫應(yīng)用程序設(shè)計(jì)中,用戶所做的第一步工作是連接數(shù)據(jù)源,也就是說必須先用Connection對(duì)

4、象建立數(shù)據(jù)源的連接,然后再進(jìn)行其他的數(shù)據(jù)操作。,用Connection對(duì)象連接常用數(shù)據(jù)庫,在ADO數(shù)據(jù)庫應(yīng)用程序設(shè)計(jì)中,可以用Connection對(duì)象建立應(yīng)用程序與常用數(shù)據(jù)庫的連接。下面介紹常用的Access數(shù)據(jù)庫、SQL Server數(shù)據(jù)庫及Oracle數(shù)據(jù)庫的連接。連接Access數(shù)據(jù)庫可用如下所示的格式。 01 Dim conn As New ADODB.Connection 02 conn.ConnectionString = Provider=Microsoft.Jet.OLEDB.4.0; Data Source=TITANTITAN 05 conn.Open,Recordset對(duì)

5、象,Recordset對(duì)象用于表示基本表或命令執(zhí)行結(jié)果的記錄全集,任何時(shí)候Recordset對(duì)象都只將集合中的單個(gè)記錄作為當(dāng)前記錄引用。在使用ADO對(duì)象時(shí),幾乎全部使用Recordset對(duì)象來對(duì)數(shù)據(jù)進(jìn)行操作。所有Recordset對(duì)象均由記錄(行)和字段(列)組成。,應(yīng)用示例,利用ADO對(duì)象模型中的Connection對(duì)象和Recordset對(duì)象打開數(shù)據(jù)庫“DBEmp”,并根據(jù)選擇顯示每一個(gè)職員的詳細(xì)信息。程序界面如圖18.4所示。,程序具體的創(chuàng)建步驟如下。 在前一個(gè)工程中添加一個(gè)窗體。 選擇“工程”“引用”命令,選擇“Microsoft ActiveX Data Object 2.5 Lib

6、rary”列表項(xiàng),然后單擊“確定”按鈕,將ADO對(duì)象添加到工程中。 選擇“工程”“部件”命令,選擇“Microsoft Hierarchical FlexGrid Control 6.0(SP4)(OLEDB)”列表項(xiàng),然后單擊“確定”按鈕,將MSHFlexGrid表格控件添加到工具箱中。該控件與前面章節(jié)介紹的DataGrid控件功能類似。 向窗體添加控件 添加代碼,操作步驟,Command對(duì)象,Command對(duì)象用于定義要對(duì)數(shù)據(jù)源執(zhí)行的特定命令。用戶可以通過Command對(duì)象查詢數(shù)據(jù)庫并返回Recordset對(duì)象中的記錄,以便執(zhí)行大量操作或?qū)?shù)據(jù)庫結(jié)構(gòu)進(jìn)行操作。 提示:Command對(duì)象與C

7、onnection對(duì)象的Execute方法及Recordset對(duì)象的Open方法之間可以互換使用。例如,執(zhí)行查詢命令時(shí),即可以用Command對(duì)象進(jìn)行查詢操作,也可以將查詢字符串傳遞給Connection對(duì)象的Execute方法或是Recordset對(duì)象的Open方法。,Field對(duì)象,Field對(duì)象用于表示公共數(shù)據(jù)類型的數(shù)據(jù)列。每個(gè)Field對(duì)象都對(duì)應(yīng)于Recordset對(duì)象中的一列。使用Field對(duì)象的Value屬性來設(shè)置或返回當(dāng)前記錄的數(shù)據(jù)。 Name屬性:Name屬性用于返回指定字段的名稱。對(duì)于Field對(duì)象,該屬性只能用于獲取指定字段的名稱。 Value屬性:Value屬性用于返回或

8、設(shè)置Field對(duì)象中的數(shù)據(jù)。在數(shù)據(jù)庫應(yīng)用程序設(shè)計(jì)中,常常通過該屬性來設(shè)置指定字段的字段值。 Type屬性:Type屬性用于返回Field對(duì)象的操作類型或數(shù)據(jù)類型。 【,Stream對(duì)象,Stream對(duì)象用于表示二進(jìn)制數(shù)據(jù)或文本的流。使用Stream對(duì)象可以為數(shù)據(jù)庫應(yīng)用程序很方便地添加圖像數(shù)據(jù)。例如,職員信息中可以添加照片信息,Error對(duì)象,Error對(duì)象包含了有關(guān)數(shù)據(jù)訪問錯(cuò)誤的詳細(xì)信息,這些錯(cuò)誤與涉及提供者的單個(gè)操作有關(guān)。在數(shù)據(jù)庫應(yīng)用程序設(shè)計(jì)中通過Error對(duì)象可以很方便地捕獲錯(cuò)誤并對(duì)錯(cuò)誤進(jìn)行處理。,綜合練習(xí),以第17章綜合練習(xí)中第1題所創(chuàng)建的“DBStudent”為例,對(duì)數(shù)據(jù)庫中的數(shù)據(jù)表“studentInfo”進(jìn)行查詢操作。查詢界面如圖18.14所示。,思考和

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論