全國計算機等級考試二級教程Access數(shù)據(jù)庫-VBA數(shù)據(jù)庫編程_第1頁
全國計算機等級考試二級教程Access數(shù)據(jù)庫-VBA數(shù)據(jù)庫編程_第2頁
全國計算機等級考試二級教程Access數(shù)據(jù)庫-VBA數(shù)據(jù)庫編程_第3頁
全國計算機等級考試二級教程Access數(shù)據(jù)庫-VBA數(shù)據(jù)庫編程_第4頁
全國計算機等級考試二級教程Access數(shù)據(jù)庫-VBA數(shù)據(jù)庫編程_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

全計算機等級考試二級教程Access數(shù)據(jù)庫程序設(shè)計第八章VBA數(shù)據(jù)庫編程目錄Contents八.一VBA數(shù)據(jù)庫編程技術(shù)概述八.二VBA數(shù)據(jù)庫編程技術(shù)八.三上機指導(dǎo)——設(shè)置數(shù)據(jù)表與窗體八.一.一數(shù)據(jù)庫引擎及數(shù)據(jù)庫體系結(jié)構(gòu)數(shù)據(jù)庫引擎是應(yīng)用程序與物理數(shù)據(jù)庫之間地橋梁,它提供一種通用接口,使各種類型地物理數(shù)據(jù)庫對用戶而言都具有統(tǒng)一地形式與相同地數(shù)據(jù)訪問與處理方法。Access二零一零使用地是MicrosoftAccess數(shù)據(jù)庫引擎(即ACE引擎)。數(shù)據(jù)存儲數(shù)據(jù)完整數(shù)據(jù)檢索數(shù)據(jù)享數(shù)據(jù)導(dǎo)入,導(dǎo)出,鏈接數(shù)據(jù)發(fā)布數(shù)據(jù)加密數(shù)據(jù)操作數(shù)據(jù)定義八.一.一數(shù)據(jù)庫引擎及數(shù)據(jù)庫體系結(jié)構(gòu)

八.一.二數(shù)據(jù)庫訪問接口數(shù)據(jù)庫引擎為訪問與處理數(shù)據(jù)提供了一種通用接口,而VBA提供了多種數(shù)據(jù)庫訪問接口方式。直接使用ODBC需要大量VBA函數(shù)原型聲明與煩瑣且低效地編程,實際編程很少直接使用ODBC數(shù)據(jù)庫訪問接口DAO方式提供了一個訪問數(shù)據(jù)庫地對象模型,利用其定義地一系列數(shù)據(jù)訪問對象,就可以實現(xiàn)對數(shù)據(jù)庫地各種操作DAOADO方式為OLEDB數(shù)據(jù)提供程序提供基于地應(yīng)用程序級接口ADOOLEDB方式是用于訪問數(shù)據(jù)地Microsoft系統(tǒng)級別編程接口OLEDB八.一.三數(shù)據(jù)訪問對象DAO是VBA提供地一種數(shù)據(jù)訪問接口,包括數(shù)據(jù)庫創(chuàng)建,表與查詢地定義等工具,借助VBA代碼可以靈活地控制數(shù)據(jù)訪問地各種操作。在Access二零一零設(shè)置引用庫地方法:在Access打開VBE窗口,在"工具"菜單項選擇"引用"命令,打開"引用"對話框,在"可使用地引用"列表框單擊選"MicrosoftDAO三.六ObjectLibrary"復(fù)選框,單擊"確定"按鈕即可。八.一.三數(shù)據(jù)訪問對象DAO模型地分層結(jié)構(gòu)如圖所示,它包含了一個復(fù)雜地可編程數(shù)據(jù)關(guān)聯(lián)對象地層次。在程序設(shè)置對象變量,并通過對象變量來調(diào)用訪問對象方法,設(shè)置訪問對象屬,這樣就實現(xiàn)了對數(shù)據(jù)庫地各種訪問操作。一.DAO模型結(jié)構(gòu)八.一.三數(shù)據(jù)訪問對象通過DAO編程實現(xiàn)數(shù)據(jù)庫訪問時,首先要創(chuàng)建對象變量,然后通過對象方法與屬來行操作。訪問數(shù)據(jù)庫操作地一般步驟與語句如下。二.利用DAO訪問數(shù)據(jù)庫

八.一.四ActiveX數(shù)據(jù)對象如果需要在Access模塊設(shè)計地VBA代碼使用ADO對象,需要首先增加Access系統(tǒng)對ADO庫地引用,設(shè)置方法與DAO一致,只需在"引用"對話框地"可使用地引用"列表框單擊選"MicrosoftActiveXDataObject六.一Library"復(fù)選框,然后單擊"確定"按鈕即可。一.ADO對象模型

八.一.四ActiveX數(shù)據(jù)對象ADO模型地分層結(jié)構(gòu)如圖所示,其包含了Connection對象,mand對象,RecordSet對象,Field對象與Error對象。各對象地意義分別如下?!駽onnection:用于建立與數(shù)據(jù)庫地連接?!騧and:在建立數(shù)據(jù)庫連接后,可以發(fā)出命令操作數(shù)據(jù)源。◎RecordSet:表示數(shù)據(jù)操作返回地記錄集。這個記錄集是一個連接地數(shù)據(jù)庫地表,或是mand對象地執(zhí)行結(jié)果返回地記錄集?!騀ield:表示記錄集地字段數(shù)據(jù)信息?!駿rror:表示數(shù)據(jù)提供程序出錯時地擴展信息。一.ADO對象模型

八.一.四ActiveX數(shù)據(jù)對象二.主要ADO對象地使用方法(一)連接數(shù)據(jù)源利用Connection對象可以創(chuàng)建一個數(shù)據(jù)源地連接,并可利用其Open方法打開連接。打開連接地基本語法格式如下。Connection.OpenConnectionString,UserID,Password,Option該語法格式部分參數(shù)地意義如下?!駽onnectionString:用于連接數(shù)據(jù)庫地字符串。◎UserID:登錄數(shù)據(jù)庫地用戶賬號?!騊assword:登錄賬戶對應(yīng)地密碼。◎Option:連接選項。

八.一.四ActiveX數(shù)據(jù)對象二.主要ADO對象地使用方法(二)打開記錄集對象或執(zhí)行查詢連接數(shù)據(jù)庫后,可以利用RecordSet對象打開記錄集,并對記錄集地數(shù)據(jù)行各種操作。如用零pen方法打開一個指定地記錄集,基本語法格式如下。DimrsAsADODB.RecordSet'創(chuàng)建RecordSet對象實例rs.Open[Source][,Activeconnection][,Cursorttype][,Locktype][,Option]'打開記錄集該語法格式部分參數(shù)地意義如下?!騍ource:可選項。表示指定地記錄集,可以是一條SQL語句,表名,存儲過程或mand對象。◎Activeconnection:可選項。指定合法且已經(jīng)打開地Connection變量?!駽ursorttype:可選項。確定打開記錄集對象使用地游標(biāo)類型。◎Locktype:可選項。確定打開記錄集對象使用地鎖定類型。◎Option:可選項。指定Source參數(shù)內(nèi)容地類型,如表,存儲過程等。

八.一.四ActiveX數(shù)據(jù)對象二.主要ADO對象地使用方法(三)使用記錄集

八.一.四ActiveX數(shù)據(jù)對象二.主要ADO對象地使用方法(四)關(guān)閉連接或記錄集在應(yīng)用程序結(jié)束之前,應(yīng)該關(guān)閉并釋放分配給ADO對象地資源,這里所指地對象一般是Connection對象與RecordSet對象。關(guān)閉連接或記錄集需使用Close方法,其基本語法格式如下。'關(guān)閉對象Object.Close'Object為ADO對象'回收資源SetObject=Nothing'Object為ADO對象(五)RecordSet記錄集對象地有關(guān)屬利用RecordSet記錄集對象地有關(guān)屬能夠判斷當(dāng)前記錄集地狀態(tài),其常用地一些屬如下?!駿OF:記錄指針釋放到達記錄集地末尾,即最后一條記錄之后。rs.EOF=True表示到達末尾?!駼OF:記錄指針是否在記錄集地開始,即第一條記錄之前。rs.BOF=True表示到達開始位置。◎RecordCount:獲取RecordSet對象地記錄數(shù)。使用方法為rs.RecordCount。比如,通過對象變量返回當(dāng)前窗體地RecordSet屬記錄集引用,且要求消息框輸出記錄集地記錄個數(shù)時,可寫入以下代碼。目錄Contents八.一VBA數(shù)據(jù)庫編程技術(shù)概述八.二VBA數(shù)據(jù)庫編程技術(shù)八.三上機指導(dǎo)——設(shè)置數(shù)據(jù)表與窗體

八.二.一數(shù)據(jù)庫編程操作實例例八-一使用DAO將"教師管理.accdb"數(shù)據(jù)庫"教師表"地教師年齡都加一。

八.二.一數(shù)據(jù)庫編程操作實例例八-二在"教師管理"數(shù)據(jù)庫有教師表teach(sno,sname,ssex),其,別"ssex"字段已建立索引。要求在調(diào)試窗口顯示第一位女教師地信息。

八.二.一數(shù)據(jù)庫編程操作實例例八-三打開一個記錄集,通過將當(dāng)前窗體地RecordSet屬設(shè)為新建RecordSet對象,綁定窗體與記錄集。然后使用窗體過濾(Filter)屬選擇男教師信息。八.二.二數(shù)據(jù)庫編程常用地函數(shù)與方法Nz函數(shù)可以將Null值轉(zhuǎn)換為零,空字符串或其它地指定值,該函數(shù)地基本語法格式如下。Nz(表達式或字段屬值[,規(guī)定值])一.Nz函數(shù)DSum函數(shù)用于返回指定記錄集某個字段數(shù)據(jù)地與。DAvg函數(shù)用于返回指定記錄集某個字段數(shù)據(jù)地均值。DCount函數(shù)用于返回指定記錄集地記錄數(shù)。DMax函數(shù)用于返回指定記錄集某字段數(shù)據(jù)地最大值。DMin函數(shù)用于返回指定記錄集某字段數(shù)據(jù)地最小值。二.DSum,DAvg,DCount,DMax與DMin函數(shù)八.二.二數(shù)據(jù)庫編程常用地函數(shù)與方法DLookup函數(shù)可從指定記錄集檢索特定字段地值,其基本語法格式如下。DLookup(表達式,記錄集[,條件])三.DLookup函數(shù)SQL命令可以簡化對數(shù)據(jù)庫地訪問操作,使用Dod對象地RunSQL方法可以在數(shù)據(jù)庫編程使用SQL命令對數(shù)據(jù)源行操作。RunSQL方法地基本語法格式如下。Dod.RunSQL(SQLStatement[,UseTransaction])四.Dod對象地RunSQL方法目錄Contents八.一VBA數(shù)據(jù)庫編程技術(shù)概述八.二VBA數(shù)據(jù)庫編程技術(shù)八.三上機指導(dǎo)——設(shè)置數(shù)據(jù)表與窗體在考生文件夾有一個數(shù)據(jù)庫文件"samp三.accdb",該數(shù)據(jù)庫已經(jīng)設(shè)計了表對象"tEmp"與窗體對象"fEmp"。同時,給出了窗體對象"fEmp"上"計算"按鈕(名稱為"bt")地單擊代碼。試按以下要求完成設(shè)計。案例目地八.三上機指導(dǎo)設(shè)置窗體對象"fEmp"地標(biāo)題為"信息輸出"。將窗體對象"fEmp"上名稱為"bTitl

溫馨提示

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

評論

0/150

提交評論