vb數(shù)據(jù)庫教程學(xué)習(xí)課程_第1頁
vb數(shù)據(jù)庫教程學(xué)習(xí)課程_第2頁
vb數(shù)據(jù)庫教程學(xué)習(xí)課程_第3頁
vb數(shù)據(jù)庫教程學(xué)習(xí)課程_第4頁
vb數(shù)據(jù)庫教程學(xué)習(xí)課程_第5頁
已閱讀5頁,還剩55頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第第8章章 數(shù)據(jù)庫程序設(shè)計數(shù)據(jù)庫程序設(shè)計本章學(xué)習(xí)目標(biāo):本章學(xué)習(xí)目標(biāo): 了解數(shù)據(jù)庫的一些基本概念,掌握創(chuàng)建了解數(shù)據(jù)庫的一些基本概念,掌握創(chuàng)建Access數(shù)據(jù)庫的數(shù)據(jù)庫的方法方法 掌握使用掌握使用DATA和和ADO數(shù)據(jù)控件連接數(shù)據(jù)庫和數(shù)據(jù)數(shù)據(jù)控件連接數(shù)據(jù)庫和數(shù)據(jù)表的方法表的方法 掌握數(shù)據(jù)識別控件綁定到掌握數(shù)據(jù)識別控件綁定到ADO數(shù)據(jù)控件的方法數(shù)據(jù)控件的方法 掌握掌握ADO控件的控件的Recordset對象常用方法和屬性對象常用方法和屬性 理解理解ADO對象模型的概念,掌握使用對象模型的概念,掌握使用ADO對象模型對象模型編程的方法和步驟編程的方法和步驟 掌握掌握SQL查詢語句在查詢語句在VB中的使

2、用中的使用第1頁/共60頁第一頁,編輯于星期日:七點 二十九分。第第8章章 數(shù)據(jù)庫程序設(shè)計數(shù)據(jù)庫程序設(shè)計本章重點本章重點 ADO控件的控件的Recordset對象的使用對象的使用 ADO對象模型的使用對象模型的使用本章難點本章難點 使用使用ADO對象模型編程實現(xiàn)數(shù)據(jù)庫的訪問對象模型編程實現(xiàn)數(shù)據(jù)庫的訪問第2頁/共60頁第二頁,編輯于星期日:七點 二十九分。學(xué)習(xí)內(nèi)容學(xué)習(xí)內(nèi)容信息管理系統(tǒng)信息管理系統(tǒng)-員工工資管理系統(tǒng)和筆記本基本信息管理系統(tǒng)員工工資管理系統(tǒng)和筆記本基本信息管理系統(tǒng)1 實例演示及分析實例演示及分析 數(shù)據(jù)庫基本概念數(shù)據(jù)庫基本概念 創(chuàng)建數(shù)據(jù)庫和數(shù)據(jù)表創(chuàng)建數(shù)據(jù)庫和數(shù)據(jù)表 數(shù)據(jù)控件數(shù)據(jù)控件DA

3、TA- 常用控件的屬性、事件和方法常用控件的屬性、事件和方法 數(shù)據(jù)記錄的增刪改數(shù)據(jù)記錄的增刪改 ADO數(shù)據(jù)控件和數(shù)據(jù)控件和SQL查詢查詢-ADO訪問數(shù)據(jù)模型、常用屬性和方法訪問數(shù)據(jù)模型、常用屬性和方法 綁定控件綁定控件 數(shù)據(jù)窗體向?qū)?shù)據(jù)窗體向?qū)?數(shù)據(jù)報表制作數(shù)據(jù)報表制作第3頁/共60頁第三頁,編輯于星期日:七點 二十九分。員工工資管理系統(tǒng)員工工資管理系統(tǒng)實例演示實例演示在第在第6章講解了文件,并用文件保存員工工資管理系統(tǒng)中的職工信息,實章講解了文件,并用文件保存員工工資管理系統(tǒng)中的職工信息,實現(xiàn)了程序和數(shù)據(jù)的分離,但是使用文本文件保存和管理數(shù)據(jù),保存的數(shù)現(xiàn)了程序和數(shù)據(jù)的分離,但是使用文本文件保

4、存和管理數(shù)據(jù),保存的數(shù)據(jù)量小、安全性差、數(shù)據(jù)不直觀,而且管理困難。數(shù)據(jù)庫技術(shù)可以實現(xiàn)據(jù)量小、安全性差、數(shù)據(jù)不直觀,而且管理困難。數(shù)據(jù)庫技術(shù)可以實現(xiàn)對數(shù)據(jù)進行科學(xué)的組織、存儲和有效集中管理,而對數(shù)據(jù)進行科學(xué)的組織、存儲和有效集中管理,而VB也為用戶提供了訪也為用戶提供了訪問數(shù)據(jù)庫的功能。問數(shù)據(jù)庫的功能。實例演示實例演示-實例實例8.1(實例(實例8.1總)總)第4頁/共60頁第四頁,編輯于星期日:七點 二十九分。員工工資管理系統(tǒng)員工工資管理系統(tǒng)問題分析問題分析本章的目標(biāo)是將第本章的目標(biāo)是將第6章以文本文件為數(shù)據(jù)源的員工章以文本文件為數(shù)據(jù)源的員工工資管理系統(tǒng)改為以數(shù)據(jù)庫為數(shù)據(jù)源的員工工資工資管理系

5、統(tǒng)改為以數(shù)據(jù)庫為數(shù)據(jù)源的員工工資管理系統(tǒng)。數(shù)據(jù)庫管理系統(tǒng)是對數(shù)據(jù)實施有效集管理系統(tǒng)。數(shù)據(jù)庫管理系統(tǒng)是對數(shù)據(jù)實施有效集中管理的專門軟件,這樣的管理方式相對以文本中管理的專門軟件,這樣的管理方式相對以文本文件為數(shù)據(jù)源方式的功能強、效率高,保存的數(shù)文件為數(shù)據(jù)源方式的功能強、效率高,保存的數(shù)據(jù)量大,安全性好。據(jù)量大,安全性好。第5頁/共60頁第五頁,編輯于星期日:七點 二十九分。員工工資管理系統(tǒng)員工工資管理系統(tǒng)問題分析問題分析根據(jù)系統(tǒng)的功能需求分析,設(shè)計完成該系統(tǒng),必須首先創(chuàng)建一個數(shù)據(jù)庫,用以根據(jù)系統(tǒng)的功能需求分析,設(shè)計完成該系統(tǒng),必須首先創(chuàng)建一個數(shù)據(jù)庫,用以保存保存員工的基本信息,這樣才可以在員工的

6、基本信息,這樣才可以在Visual Basic中調(diào)用數(shù)據(jù)庫中的數(shù)據(jù),并以某中調(diào)用數(shù)據(jù)庫中的數(shù)據(jù),并以某種方式顯示出來。種方式顯示出來。要設(shè)計一個具有數(shù)據(jù)信息管理功能的系統(tǒng),需要下面幾個步驟:要設(shè)計一個具有數(shù)據(jù)信息管理功能的系統(tǒng),需要下面幾個步驟:(1)確定并設(shè)計系統(tǒng)需要的數(shù)據(jù)庫和數(shù)據(jù)表,并創(chuàng)建數(shù)據(jù)庫和數(shù)據(jù)表。)確定并設(shè)計系統(tǒng)需要的數(shù)據(jù)庫和數(shù)據(jù)表,并創(chuàng)建數(shù)據(jù)庫和數(shù)據(jù)表。(2)新建工程,根據(jù)要求設(shè)計界面。)新建工程,根據(jù)要求設(shè)計界面。(3)實現(xiàn))實現(xiàn)VB工程與數(shù)據(jù)庫的連接。工程與數(shù)據(jù)庫的連接。(4)編寫代碼實現(xiàn)相應(yīng)功能。)編寫代碼實現(xiàn)相應(yīng)功能。第6頁/共60頁第六頁,編輯于星期日:七點 二十九分。

7、數(shù)據(jù)庫基本概念數(shù)據(jù)庫基本概念數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫系統(tǒng)1. 數(shù)據(jù)庫數(shù)據(jù)庫數(shù)據(jù)是指能被計算機存儲和處理的反映客觀實體信息的物理符號。數(shù)字、文字、表格、數(shù)據(jù)是指能被計算機存儲和處理的反映客觀實體信息的物理符號。數(shù)字、文字、表格、音頻、視頻、圖形、圖像和動畫等都被稱為數(shù)據(jù)。數(shù)據(jù)庫(音頻、視頻、圖形、圖像和動畫等都被稱為數(shù)據(jù)。數(shù)據(jù)庫(Data Base,簡記為,簡記為DB)則是為某種特殊目的而組織起來的記錄和文件的集合。則是為某種特殊目的而組織起來的記錄和文件的集合。2. 數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫管理系統(tǒng)(數(shù)據(jù)庫管理系統(tǒng)(Data Base Manage System,簡稱為,簡稱為DBMS),是

8、數(shù)據(jù)庫),是數(shù)據(jù)庫系統(tǒng)中對數(shù)據(jù)進行管理的專門軟件,是數(shù)據(jù)庫系統(tǒng)的核心組成部分,對數(shù)系統(tǒng)中對數(shù)據(jù)進行管理的專門軟件,是數(shù)據(jù)庫系統(tǒng)的核心組成部分,對數(shù)據(jù)庫的所有操作和控制,都是通過據(jù)庫的所有操作和控制,都是通過DBMS來進行的。來進行的。3. 數(shù)據(jù)庫應(yīng)用系統(tǒng)數(shù)據(jù)庫應(yīng)用系統(tǒng)是在某種是在某種DBMS的支持下,根據(jù)實際應(yīng)用的需要,開發(fā)出來的應(yīng)用程序包的支持下,根據(jù)實際應(yīng)用的需要,開發(fā)出來的應(yīng)用程序包第7頁/共60頁第七頁,編輯于星期日:七點 二十九分。數(shù)據(jù)庫基本概念數(shù)據(jù)庫基本概念關(guān)系數(shù)據(jù)庫關(guān)系數(shù)據(jù)庫1.數(shù)據(jù)模型數(shù)據(jù)模型數(shù)據(jù)模型是表示數(shù)據(jù)及數(shù)據(jù)之間聯(lián)系的結(jié)構(gòu)方式。在實際的數(shù)據(jù)處理中,先將數(shù)據(jù)模型是表示數(shù)據(jù)

9、及數(shù)據(jù)之間聯(lián)系的結(jié)構(gòu)方式。在實際的數(shù)據(jù)處理中,先將現(xiàn)實世界的事物及其聯(lián)系抽象為信息世界的信息模型,再將信息模型抽象轉(zhuǎn)化現(xiàn)實世界的事物及其聯(lián)系抽象為信息世界的信息模型,再將信息模型抽象轉(zhuǎn)化為計算機世界的數(shù)據(jù)模型。數(shù)據(jù)模型的好壞直接影響數(shù)據(jù)庫的性能。數(shù)據(jù)模型為計算機世界的數(shù)據(jù)模型。數(shù)據(jù)模型的好壞直接影響數(shù)據(jù)庫的性能。數(shù)據(jù)模型的設(shè)計方法決定著數(shù)據(jù)庫的設(shè)計方法,目前流行的模型有:網(wǎng)狀模型、層次模的設(shè)計方法決定著數(shù)據(jù)庫的設(shè)計方法,目前流行的模型有:網(wǎng)狀模型、層次模型和關(guān)系模型。型和關(guān)系模型。(1)網(wǎng)狀模型是用圖結(jié)構(gòu)來表示數(shù)據(jù)之間的聯(lián)系。)網(wǎng)狀模型是用圖結(jié)構(gòu)來表示數(shù)據(jù)之間的聯(lián)系。(2)層次模型是用樹結(jié)構(gòu)來

10、表示數(shù)據(jù)之間的聯(lián)系。)層次模型是用樹結(jié)構(gòu)來表示數(shù)據(jù)之間的聯(lián)系。(3)關(guān)系模型是用二維表結(jié)構(gòu)來表示數(shù)據(jù)之間的聯(lián)系。)關(guān)系模型是用二維表結(jié)構(gòu)來表示數(shù)據(jù)之間的聯(lián)系。 關(guān)系模型是一種較先進的模型,目前幾乎所有的現(xiàn)代關(guān)系模型是一種較先進的模型,目前幾乎所有的現(xiàn)代DBMS都使用關(guān)系數(shù)據(jù)庫模都使用關(guān)系數(shù)據(jù)庫模型來存儲和處理信息。在關(guān)系數(shù)據(jù)庫管理系統(tǒng)中,系統(tǒng)以表的形式管理所有數(shù)據(jù)。型來存儲和處理信息。在關(guān)系數(shù)據(jù)庫管理系統(tǒng)中,系統(tǒng)以表的形式管理所有數(shù)據(jù)。第8頁/共60頁第八頁,編輯于星期日:七點 二十九分。數(shù)據(jù)庫基本概念數(shù)據(jù)庫基本概念關(guān)系數(shù)據(jù)庫關(guān)系數(shù)據(jù)庫2.關(guān)系數(shù)據(jù)庫關(guān)系數(shù)據(jù)庫 關(guān)系數(shù)據(jù)庫是以關(guān)系模型為基礎(chǔ)的數(shù)

11、據(jù)庫,它由以下三部分組成:關(guān)系數(shù)據(jù)庫是以關(guān)系模型為基礎(chǔ)的數(shù)據(jù)庫,它由以下三部分組成:(1)數(shù)據(jù)結(jié)構(gòu))數(shù)據(jù)結(jié)構(gòu)模型所操作的對象、類型的集合。模型所操作的對象、類型的集合。(2)完整性規(guī)則)完整性規(guī)則保證數(shù)據(jù)有效、正確的約束條件。保證數(shù)據(jù)有效、正確的約束條件。(3)數(shù)據(jù)操作)數(shù)據(jù)操作對模型對象所允許執(zhí)行的操作方式。對模型對象所允許執(zhí)行的操作方式。3.關(guān)系表關(guān)系表(1)關(guān)系:)關(guān)系:關(guān)系(關(guān)系(Relation)是一個由行和列組成的二維表格,也稱為關(guān)系表或表。)是一個由行和列組成的二維表格,也稱為關(guān)系表或表。 (2)字段:表由若干行和若干列組成,每一列稱為字段(字段:表由若干行和若干列組成,每一列稱

12、為字段(Field)。)。 (3)記錄:表中的每一行稱為記錄()記錄:表中的每一行稱為記錄(Record) 。(4) 值:在表中的行和列,凡記錄和字段的相交處就是值值:在表中的行和列,凡記錄和字段的相交處就是值存儲的數(shù)據(jù)元素存儲的數(shù)據(jù)元素 。(5)表的主鍵和索引:)表的主鍵和索引:第9頁/共60頁第九頁,編輯于星期日:七點 二十九分。數(shù)據(jù)庫基本概念數(shù)據(jù)庫基本概念關(guān)系數(shù)據(jù)庫關(guān)系數(shù)據(jù)庫字段記錄主鍵按學(xué)號索引圖8.7 筆記本價格信息表第10頁/共60頁第十頁,編輯于星期日:七點 二十九分。數(shù)據(jù)庫基本概念數(shù)據(jù)庫基本概念關(guān)系數(shù)據(jù)庫關(guān)系數(shù)據(jù)庫4.記錄集記錄集數(shù)據(jù)庫可以由多個表組成,表與表之間可以用不同的方

13、式相互關(guān)聯(lián)。例如數(shù)據(jù)庫可以由多個表組成,表與表之間可以用不同的方式相互關(guān)聯(lián)。例如在筆記本信息管理數(shù)據(jù)庫中還有一個基本配置表,其結(jié)構(gòu)如圖在筆記本信息管理數(shù)據(jù)庫中還有一個基本配置表,其結(jié)構(gòu)如圖8.8所示。在該所示。在該表中只需一個編號字段引用筆記本的品牌和價格信息等,而不必重復(fù)每一個字段,通過表中只需一個編號字段引用筆記本的品牌和價格信息等,而不必重復(fù)每一個字段,通過兩個表中相同的編號字段就可以把筆記本的配置信息和價格信息等聯(lián)系起來了。兩個表中相同的編號字段就可以把筆記本的配置信息和價格信息等聯(lián)系起來了。圖8.8 基本配置表的結(jié)構(gòu)第11頁/共60頁第十一頁,編輯于星期日:七點 二十九分。數(shù)據(jù)庫基本

14、概念數(shù)據(jù)庫基本概念關(guān)系數(shù)據(jù)庫關(guān)系數(shù)據(jù)庫4.記錄集記錄集在在Visual Basic中,可以將一個或幾個表中的數(shù)據(jù)構(gòu)成記錄集中,可以將一個或幾個表中的數(shù)據(jù)構(gòu)成記錄集RecordSet對象,記對象,記錄集也由行和列構(gòu)成,它與表類似,如圖錄集也由行和列構(gòu)成,它與表類似,如圖8.9所示。所示。數(shù)據(jù)庫記錄集圖8.9 數(shù)據(jù)庫與記錄集第12頁/共60頁第十二頁,編輯于星期日:七點 二十九分。數(shù)據(jù)庫基本概念數(shù)據(jù)庫基本概念關(guān)系數(shù)據(jù)庫關(guān)系數(shù)據(jù)庫4.記錄集記錄集在在Visual Basic中數(shù)據(jù)庫內(nèi)的表格不允許直接訪問,而只能通過記錄集對象進行記中數(shù)據(jù)庫內(nèi)的表格不允許直接訪問,而只能通過記錄集對象進行記錄的操作和瀏

15、覽,因此,記錄集是一種瀏覽數(shù)據(jù)庫的工具。用戶可根據(jù)需要,通過錄的操作和瀏覽,因此,記錄集是一種瀏覽數(shù)據(jù)庫的工具。用戶可根據(jù)需要,通過使用記錄集對象選擇數(shù)據(jù)。使用記錄集對象選擇數(shù)據(jù)。記錄集有三種類型:記錄集有三種類型:1. 表類型(表類型(Table):表類型的):表類型的RecordSet對象是當(dāng)前數(shù)據(jù)庫真實的數(shù)據(jù)表。它比其他類型對象是當(dāng)前數(shù)據(jù)庫真實的數(shù)據(jù)表。它比其他類型的記錄集處理速度都快,但需要大量的內(nèi)存開銷。的記錄集處理速度都快,但需要大量的內(nèi)存開銷。2. 動態(tài)集類型(動態(tài)集類型(DynaSet):動態(tài)集類型的):動態(tài)集類型的RecordSet對象是可以更新的數(shù)據(jù)對象是可以更新的數(shù)據(jù)集,

16、它實際上是對一個或者幾個表中的記錄的引用。集,它實際上是對一個或者幾個表中的記錄的引用。3. 快照類型(快照類型(SnapShot):快照類型的):快照類型的RecordSet對象是靜態(tài)數(shù)據(jù)的顯示。它包含對象是靜態(tài)數(shù)據(jù)的顯示。它包含的數(shù)據(jù)是固定的,記錄集為只讀狀態(tài),它反映了在產(chǎn)生快照的一瞬間數(shù)據(jù)庫的的數(shù)據(jù)是固定的,記錄集為只讀狀態(tài),它反映了在產(chǎn)生快照的一瞬間數(shù)據(jù)庫的狀態(tài)??煺帐亲钊鄙凫`活性的記錄集,但它所需要的內(nèi)存開銷最少。如果只是狀態(tài)??煺帐亲钊鄙凫`活性的記錄集,但它所需要的內(nèi)存開銷最少。如果只是瀏覽記錄,可以用快照類型瀏覽記錄,可以用快照類型第13頁/共60頁第十三頁,編輯于星期日:七點

17、二十九分。數(shù)據(jù)庫的創(chuàng)建數(shù)據(jù)庫的創(chuàng)建任務(wù)分析任務(wù)分析在員工工資管理系統(tǒng)中,要保存員工個人信息,即員工編號、姓名、年齡、所在部門、在員工工資管理系統(tǒng)中,要保存員工個人信息,即員工編號、姓名、年齡、所在部門、職位等,還要保存員工工資信息,即員工編號、基本工資、獎金、各種補助。因此需要職位等,還要保存員工工資信息,即員工編號、基本工資、獎金、各種補助。因此需要建立一個數(shù)據(jù)庫,庫中要有兩張表。建立一個數(shù)據(jù)庫,庫中要有兩張表。數(shù)據(jù)庫創(chuàng)建有很多軟件,如數(shù)據(jù)庫創(chuàng)建有很多軟件,如Access、SQL Sever、VFP等。我們使用等。我們使用Access數(shù)數(shù)據(jù)庫,可以用據(jù)庫,可以用Access數(shù)據(jù)庫開發(fā)軟件創(chuàng)建

18、,也可以用數(shù)據(jù)庫開發(fā)軟件創(chuàng)建,也可以用VB集成開發(fā)環(huán)境中的集成開發(fā)環(huán)境中的“可可視化數(shù)據(jù)管理器視化數(shù)據(jù)管理器”創(chuàng)建。創(chuàng)建。第14頁/共60頁第十四頁,編輯于星期日:七點 二十九分。數(shù)據(jù)庫的創(chuàng)建數(shù)據(jù)庫的創(chuàng)建操作步驟操作步驟1. 啟動啟動VB新建工程。新建工程。2. 建立數(shù)據(jù)庫。建立數(shù)據(jù)庫。(1)在)在VB集成開發(fā)環(huán)境中,單擊集成開發(fā)環(huán)境中,單擊“外接程序外接程序”“可視化數(shù)據(jù)管理器可視化數(shù)據(jù)管理器”,打開可視化數(shù)據(jù)管理器的打開可視化數(shù)據(jù)管理器的“VisData”窗口,如圖窗口,如圖8.10所示。所示。(2)單擊)單擊“文件文件”“新建新建”“Microsoft Access” “Version

19、7.0 MDB”,打開打開“選擇要創(chuàng)建的選擇要創(chuàng)建的Microsoft Access 數(shù)據(jù)庫數(shù)據(jù)庫”對話框。對話框。(3)在該對話框中數(shù)據(jù)要創(chuàng)建的數(shù)據(jù)庫文件的名稱,)在該對話框中數(shù)據(jù)要創(chuàng)建的數(shù)據(jù)庫文件的名稱,指定保存的路徑。一般將數(shù)據(jù)庫保存在和工程文件指定保存的路徑。一般將數(shù)據(jù)庫保存在和工程文件相同的文件夾中。相同的文件夾中。圖8.10 可視化數(shù)據(jù)管理器窗口第15頁/共60頁第十五頁,編輯于星期日:七點 二十九分。數(shù)據(jù)庫的創(chuàng)建數(shù)據(jù)庫的創(chuàng)建操作步驟操作步驟第16頁/共60頁第十六頁,編輯于星期日:七點 二十九分。數(shù)據(jù)庫的創(chuàng)建數(shù)據(jù)庫的創(chuàng)建操作步驟操作步驟3.建立數(shù)據(jù)表。建立數(shù)據(jù)表。(1)確定表結(jié)構(gòu)

20、。)確定表結(jié)構(gòu)。 員工基本信息表員工基本信息表 員工工資表員工工資表字段名數(shù)據(jù)類型長度字段名數(shù)據(jù)類型長度員工編號文本8員工姓名文本10年齡數(shù)字所在部門文本20職位文本10字段名數(shù)據(jù)類型長度字段名數(shù)據(jù)類型長度員工編號文本8標(biāo)準工資數(shù)字雙精度型獎金數(shù)字雙精度型各種補助數(shù)字雙精度型第17頁/共60頁第十七頁,編輯于星期日:七點 二十九分。數(shù)據(jù)庫的創(chuàng)建數(shù)據(jù)庫的創(chuàng)建操作步驟操作步驟3.建立數(shù)據(jù)表。建立數(shù)據(jù)表。(2)建立表結(jié)構(gòu)。)建立表結(jié)構(gòu)。在圖在圖8.11所示的所示的“數(shù)據(jù)庫窗口數(shù)據(jù)庫窗口”的空白處右擊,從彈出的快捷菜單中選擇的空白處右擊,從彈出的快捷菜單中選擇“新建表新建表”,打開如圖打開如圖8.12

21、所示的表結(jié)構(gòu)對話框。所示的表結(jié)構(gòu)對話框。在在“表名稱表名稱”文本框中輸入數(shù)據(jù)表的名稱文本框中輸入數(shù)據(jù)表的名稱,“添加字段添加字段”按鈕按鈕 所有字段添加之后,單擊所有字段添加之后,單擊“生成表生成表”。(3)輸入表記錄。)輸入表記錄。圖8.12 “表結(jié)構(gòu)”對話框第18頁/共60頁第十八頁,編輯于星期日:七點 二十九分。數(shù)據(jù)庫的創(chuàng)建數(shù)據(jù)庫的創(chuàng)建操作步驟操作步驟3.建立數(shù)據(jù)表。建立數(shù)據(jù)表。(3)輸入表記錄。)輸入表記錄。雙擊表名稱,即可雙擊表名稱,即可輸入表記錄,如圖所示。輸入表記錄,如圖所示。第19頁/共60頁第十九頁,編輯于星期日:七點 二十九分。數(shù)據(jù)控件數(shù)據(jù)控件Data員工基本信息瀏覽員工基

22、本信息瀏覽要在要在Visual Basic中訪問數(shù)據(jù)庫,就要使用一個能夠訪問數(shù)據(jù)庫的控件。主要中訪問數(shù)據(jù)庫,就要使用一個能夠訪問數(shù)據(jù)庫的控件。主要有有Data控件、控件、DAO控件、控件、ADO控件等,其中控件等,其中Data控件控件 是是Visual Basic內(nèi)內(nèi)嵌的一個訪問數(shù)據(jù)庫的方便的工具。嵌的一個訪問數(shù)據(jù)庫的方便的工具。實例演示實例演示設(shè)計程序界面設(shè)計程序界面 添加添加Data控件控件第20頁/共60頁第二十頁,編輯于星期日:七點 二十九分。數(shù)據(jù)控件數(shù)據(jù)控件Data使用使用Data控件連接數(shù)據(jù)庫和數(shù)據(jù)表控件連接數(shù)據(jù)庫和數(shù)據(jù)表設(shè)置設(shè)置Data控件屬性控件屬性(1)Connect屬性屬性

23、Connect屬性指定數(shù)據(jù)控件所要連接的數(shù)據(jù)庫類型,屬性指定數(shù)據(jù)控件所要連接的數(shù)據(jù)庫類型,VB默認的數(shù)據(jù)庫是默認的數(shù)據(jù)庫是Access的的MDB文件。此外,也可連接文件。此外,也可連接DBF、XLS、ODBC等類型的數(shù)據(jù)庫。等類型的數(shù)據(jù)庫。(2)DatabaseName屬性屬性DatabaseName屬性指定具體使用的數(shù)據(jù)庫文件名,包括所有的路徑名。屬性指定具體使用的數(shù)據(jù)庫文件名,包括所有的路徑名。本例中選本例中選wages.mdb。注意:注意:最好最好將數(shù)據(jù)庫文件和工程文件放在同一個文件夾下將數(shù)據(jù)庫文件和工程文件放在同一個文件夾下,這樣設(shè)置其,這樣設(shè)置其DatabaseName屬性時只寫文件

24、名即可。否則,如果寫絕對路徑,則隨著屬性時只寫文件名即可。否則,如果寫絕對路徑,則隨著工程文件位置的改變,可能出現(xiàn)找不到數(shù)據(jù)庫文件的錯誤。工程文件位置的改變,可能出現(xiàn)找不到數(shù)據(jù)庫文件的錯誤。第21頁/共60頁第二十一頁,編輯于星期日:七點 二十九分。數(shù)據(jù)控件數(shù)據(jù)控件Data使用使用Data控件連接數(shù)據(jù)庫和數(shù)據(jù)表控件連接數(shù)據(jù)庫和數(shù)據(jù)表設(shè)置設(shè)置Data控件屬性控件屬性(3)RecordSource屬性屬性RecordSource屬性確定具體可訪問的數(shù)據(jù),這些數(shù)據(jù)構(gòu)成記錄集對象的屬性確定具體可訪問的數(shù)據(jù),這些數(shù)據(jù)構(gòu)成記錄集對象的RecordSet對象。該屬性值可以是數(shù)據(jù)庫中的單個表名,一個存儲查詢,

25、也可對象。該屬性值可以是數(shù)據(jù)庫中的單個表名,一個存儲查詢,也可以是使用以是使用SQL查詢語言的一個查詢字符串。查詢語言的一個查詢字符串。(本例這中選本例這中選info)(4) RecordType屬性屬性確定記錄集類型,指定記錄集的確定記錄集類型,指定記錄集的Table、DynaSet、SnapShot三種類型中的一種三種類型中的一種.本例中因為只是瀏覽信息,無需修改記錄,故可將其類型選為本例中因為只是瀏覽信息,無需修改記錄,故可將其類型選為SnapShot第22頁/共60頁第二十二頁,編輯于星期日:七點 二十九分。數(shù)據(jù)控件數(shù)據(jù)控件Data將數(shù)據(jù)綁定控件綁定到將數(shù)據(jù)綁定控件綁定到Data控件控

26、件在在Visual Basic中,中,數(shù)據(jù)控件本身不能直接顯示記錄集中的數(shù)據(jù),必須通過能與它綁數(shù)據(jù)控件本身不能直接顯示記錄集中的數(shù)據(jù),必須通過能與它綁定的控件來實現(xiàn)。定的控件來實現(xiàn)。可與數(shù)據(jù)控件綁定的控件對象有文本框、標(biāo)簽、圖像框、圖形可與數(shù)據(jù)控件綁定的控件對象有文本框、標(biāo)簽、圖像框、圖形框、列表框、組合框、復(fù)選框、網(wǎng)格、框、列表框、組合框、復(fù)選框、網(wǎng)格、DB列表框、列表框、DB網(wǎng)格和網(wǎng)格和OLE容器等空間。容器等空間。本例中的數(shù)據(jù)綁定控件為文本框。必須設(shè)置數(shù)據(jù)綁定控件的兩個屬性:本例中的數(shù)據(jù)綁定控件為文本框。必須設(shè)置數(shù)據(jù)綁定控件的兩個屬性:(1) DataSource屬性屬性通過指定一個有效

27、的數(shù)據(jù)控件綁定控件連接到一個數(shù)據(jù)源上。通過指定一個有效的數(shù)據(jù)控件綁定控件連接到一個數(shù)據(jù)源上。(2)DataField屬性屬性設(shè)置數(shù)據(jù)源中有效的字段使綁定控件與其建立聯(lián)系。設(shè)置數(shù)據(jù)源中有效的字段使綁定控件與其建立聯(lián)系。本實例中分別設(shè)置幾個文本框的上述兩個屬性。本實例中分別設(shè)置幾個文本框的上述兩個屬性。第23頁/共60頁第二十三頁,編輯于星期日:七點 二十九分。數(shù)據(jù)控件數(shù)據(jù)控件Data編寫實現(xiàn)信息瀏覽的代碼編寫實現(xiàn)信息瀏覽的代碼Data控件本身就有瀏覽記錄的功能,單擊對應(yīng)按鈕可實現(xiàn)控件本身就有瀏覽記錄的功能,單擊對應(yīng)按鈕可實現(xiàn)“第一條第一條”、“上一條上一條”、“下一條下一條”和和“最后一條最后一

28、條”的功能。的功能。但直接使用控件瀏覽不是很好看,可通過單擊按鈕完成。必須使用但直接使用控件瀏覽不是很好看,可通過單擊按鈕完成。必須使用RecordSet記錄集的屬性和方法來實現(xiàn)。記錄集的屬性和方法來實現(xiàn)。(1) AbsolutePosition屬性屬性AbsolutePosition屬性返回當(dāng)前指針值,如果是第屬性返回當(dāng)前指針值,如果是第1條記錄,其值為條記錄,其值為0。該屬性。該屬性為只讀屬性。為只讀屬性。在在Data控件的控件的Reposition事件中,修改事件中,修改Data控件的控件的Caption屬性。屬性。(2)RecordCount屬性屬性RecordCount屬性對屬性對R

29、ecordset對象中的記錄計數(shù),為只讀屬性。對象中的記錄計數(shù),為只讀屬性。(3)BOF和和EOF屬性屬性第24頁/共60頁第二十四頁,編輯于星期日:七點 二十九分。數(shù)據(jù)控件數(shù)據(jù)控件Data編寫實現(xiàn)信息瀏覽的代碼編寫實現(xiàn)信息瀏覽的代碼主要方法主要方法(1) Move方法方法MoveFirst方法:移至第一條記錄。方法:移至第一條記錄。MoveLast方法:移至最后一條記錄。方法:移至最后一條記錄。MoveNext方法:移至下一條記錄。方法:移至下一條記錄。MovePrevious方法:移至上一條記錄。方法:移至上一條記錄。Move n方法:向前或向后移動方法:向前或向后移動n條記錄,條記錄,n

30、為指定的數(shù)值。為指定的數(shù)值。(2)Find 方法方法RecordCount屬性對屬性對Recordset對象中的記錄計數(shù),為只讀屬性。對象中的記錄計數(shù),為只讀屬性。第25頁/共60頁第二十五頁,編輯于星期日:七點 二十九分。數(shù)據(jù)控件數(shù)據(jù)控件Data編寫實現(xiàn)信息瀏覽的代碼編寫實現(xiàn)信息瀏覽的代碼主要方法主要方法(2)Find 方法方法使用使用Find方法可在指定的方法可在指定的Dynaset或或Snapshot類型的類型的Recordset對象中查找對象中查找與指定條件相符的一條記錄,并使之成為當(dāng)前記錄。共有如下四種與指定條件相符的一條記錄,并使之成為當(dāng)前記錄。共有如下四種Find方法:方法:Fi

31、ndFirst方法:從記錄集的開始查找滿足條件的第方法:從記錄集的開始查找滿足條件的第1條記錄。條記錄。FindLast方法:從記錄集的尾部向前查找滿足條件的第方法:從記錄集的尾部向前查找滿足條件的第1條記錄。條記錄。FindNext方法:從當(dāng)前記錄開始查找滿足條件的下一條記錄。方法:從當(dāng)前記錄開始查找滿足條件的下一條記錄。FindPrevious方法:從當(dāng)前記錄開始查找滿足條件的上一條記錄。方法:從當(dāng)前記錄開始查找滿足條件的上一條記錄。四種四種Find方法的語法格式相同:方法的語法格式相同: 數(shù)據(jù)集合數(shù)據(jù)集合.Find方法方法 條件條件其中,條件是一個指定字段與常量關(guān)系的字符串表達式。其中,

32、條件是一個指定字段與常量關(guān)系的字符串表達式。第26頁/共60頁第二十六頁,編輯于星期日:七點 二十九分。數(shù)據(jù)控件數(shù)據(jù)控件Data編寫實現(xiàn)信息瀏覽的代碼編寫實現(xiàn)信息瀏覽的代碼在寫條件時有以下幾點需要說明:在寫條件時有以下幾點需要說明:(1)在)在 語句編號語句編號= & bh & 中,中,bh是個字符串變量,必須使用符號是個字符串變量,必須使用符號“&”進行字符串的連接,其兩側(cè)必須加空格。進行字符串的連接,其兩側(cè)必須加空格。(2)如果要查找的條件部分是個字符串常量,如查找編號為)如果要查找的條件部分是個字符串常量,如查找編號為“000010”的記錄,的記錄,則要寫成如下形

33、式:編號則要寫成如下形式:編號=000010。即字符串常量用單引號括起來。即字符串常量用單引號括起來。(3)如果要查找的條件部分是個數(shù)值常量,如查找參考價格大于)如果要查找的條件部分是個數(shù)值常量,如查找參考價格大于5000的記錄,則的記錄,則要寫成如下形式:參考價格要寫成如下形式:參考價格=5000 ,若將,若將5000存入整型變量存入整型變量jg,則寫成:參考價,則寫成:參考價格格= & jg(4)可以將條件部分存放在字符串變量中,然后在)可以將條件部分存放在字符串變量中,然后在Find方法使用該字符串方法使用該字符串變量。如:變量。如: Findstr=編號編號= & bh

34、 & Data1. Recordset.FindFirst Findstr第27頁/共60頁第二十七頁,編輯于星期日:七點 二十九分。數(shù)據(jù)控件數(shù)據(jù)控件Data編寫實現(xiàn)信息瀏覽的代碼編寫實現(xiàn)信息瀏覽的代碼在寫條件時有以下幾點需要說明:在寫條件時有以下幾點需要說明:(5)如果要進行模糊查詢,如查找型號中含有字符)如果要進行模糊查詢,如查找型號中含有字符“S”的筆記本電腦記錄,的筆記本電腦記錄,則可以使用如下語句:則可以使用如下語句:Data1. Recordset.FindFirst 型號型號 Like *S*其中其中Like是個運算符,是個運算符,*S*匹配型號字段中帶有匹配型號字段中帶

35、有“S”字符的所有型號的字符字符的所有型號的字符串。串。(6)Find方法進行的查找在默認情況下是不區(qū)分大小寫的。要改變默認查找方法,方法進行的查找在默認情況下是不區(qū)分大小寫的。要改變默認查找方法,可在窗體的聲明部分或聲明模塊中使用下列語句:可在窗體的聲明部分或聲明模塊中使用下列語句: Option Compare Text 不區(qū)分大小寫不區(qū)分大小寫 Option Compare Binary 區(qū)分大小寫區(qū)分大小寫(7)Find方法在找不到相匹配的記錄時,當(dāng)前記錄保持在查找的起始處,方法在找不到相匹配的記錄時,當(dāng)前記錄保持在查找的起始處,NoMatch屬性為屬性為True。如果。如果Find方

36、法找到相匹配的記錄,則定位到該記錄,方法找到相匹配的記錄,則定位到該記錄,Recordset的的NoMatch屬性為屬性為False。第28頁/共60頁第二十八頁,編輯于星期日:七點 二十九分。數(shù)據(jù)控件數(shù)據(jù)控件Data編寫實現(xiàn)信息瀏覽的代碼編寫實現(xiàn)信息瀏覽的代碼數(shù)據(jù)控件的事件:數(shù)據(jù)控件的事件:(1)Reposition事件事件 Reposition事件發(fā)生在一條記錄成為當(dāng)前記錄后。只要改變記錄集的指針使其從事件發(fā)生在一條記錄成為當(dāng)前記錄后。只要改變記錄集的指針使其從一條記錄移到另一條記錄,都會觸發(fā)一條記錄移到另一條記錄,都會觸發(fā)Reposition事件。通常,可在此事件中顯示當(dāng)前事件。通常,可

37、在此事件中顯示當(dāng)前指針的位置。指針的位置。(2)Validate事件事件 Validate事件是在移動到一條不同記錄之前出現(xiàn)。此外,當(dāng)修改或刪除事件是在移動到一條不同記錄之前出現(xiàn)。此外,當(dāng)修改或刪除數(shù)據(jù)表中的記錄前或卸載含有數(shù)據(jù)控件的窗體時都會觸發(fā)數(shù)據(jù)表中的記錄前或卸載含有數(shù)據(jù)控件的窗體時都會觸發(fā)Validate事件。事件。Validate事件能檢查被數(shù)據(jù)控件綁定的控件內(nèi)的數(shù)據(jù)是否發(fā)生變化。它通事件能檢查被數(shù)據(jù)控件綁定的控件內(nèi)的數(shù)據(jù)是否發(fā)生變化。它通過過Save參數(shù)(參數(shù)(True或或False)判斷是否有數(shù)據(jù)發(fā)生變化,)判斷是否有數(shù)據(jù)發(fā)生變化,Action參數(shù)判斷參數(shù)判斷哪一種操作觸發(fā)了哪一

38、種操作觸發(fā)了Validate事件。事件。第29頁/共60頁第二十九頁,編輯于星期日:七點 二十九分。數(shù)據(jù)控件數(shù)據(jù)控件Data編寫實現(xiàn)信息瀏覽的代碼編寫實現(xiàn)信息瀏覽的代碼表表8.3 Validate8.3 Validate事件的事件的ActionAction參數(shù)參數(shù)ActionAction值值描述描述ActionAction值值描述描述0取消對數(shù)據(jù)控件的操作6Update1MoveFirst7Delete2MovePrevious8Find3MoveNext9設(shè)置Bookmark4MoveLast10Close5AddNew11卸載窗體第30頁/共60頁第三十頁,編輯于星期日:七點 二十九分。數(shù)

39、據(jù)控件數(shù)據(jù)控件Data員工基本信息維護員工基本信息維護在前面瀏覽信息窗體中,只能瀏覽信息,卻不能進行維護。在上面添加幾個用于維護的按鈕,在前面瀏覽信息窗體中,只能瀏覽信息,卻不能進行維護。在上面添加幾個用于維護的按鈕,界面設(shè)計如圖:界面設(shè)計如圖:實例演示實例演示第31頁/共60頁第三十一頁,編輯于星期日:七點 二十九分。數(shù)據(jù)控件數(shù)據(jù)控件Data員工基本信息維護員工基本信息維護1.1.增加記錄增加記錄AddNew方法在記錄集中增加新記錄。增加記錄的步驟為:方法在記錄集中增加新記錄。增加記錄的步驟為:(1)調(diào)用)調(diào)用AddNew方法方法(2)給字段賦值,格式為:)給字段賦值,格式為:Records

40、et.Fields(字段名字段名)=值值(3)調(diào)用)調(diào)用Update方法,確定所做的添加,將緩沖區(qū)內(nèi)的數(shù)據(jù)寫入數(shù)據(jù)庫方法,確定所做的添加,將緩沖區(qū)內(nèi)的數(shù)據(jù)寫入數(shù)據(jù)庫提示:提示: 如果使用如果使用AddNew方法增加了新記錄,但是沒有使用方法增加了新記錄,但是沒有使用Update方法而移動到其方法而移動到其他記錄,或者關(guān)閉了記錄集,那么所做的輸入將全部丟失,而沒有任何警告。當(dāng)調(diào)用他記錄,或者關(guān)閉了記錄集,那么所做的輸入將全部丟失,而沒有任何警告。當(dāng)調(diào)用Update方法寫入記錄后,記錄指針自動從新記錄返回到添加記錄前的位置上,而不方法寫入記錄后,記錄指針自動從新記錄返回到添加記錄前的位置上,而不顯

41、示新記錄。為此,可在調(diào)用顯示新記錄。為此,可在調(diào)用Update方法后,使用方法后,使用MoveLast方法將記錄指針再次方法將記錄指針再次移到新記錄上。移到新記錄上。第32頁/共60頁第三十二頁,編輯于星期日:七點 二十九分。數(shù)據(jù)控件數(shù)據(jù)控件Data員工基本信息維護員工基本信息維護2.2.刪除記錄刪除記錄要從記錄集中刪除記錄的操作分為三步:要從記錄集中刪除記錄的操作分為三步:(1)定位被刪除的記錄使之成為當(dāng)前記錄。)定位被刪除的記錄使之成為當(dāng)前記錄。(2)調(diào)用)調(diào)用Delete方法。方法。(3)移動記錄指針。)移動記錄指針。提示:提示: 在使用在使用Delete方法時,當(dāng)前記錄立即刪除,不加任

42、何的警告或者提示,可在方法時,當(dāng)前記錄立即刪除,不加任何的警告或者提示,可在Delete方法之前增加提示信息。刪除一條記錄后,被數(shù)據(jù)庫所約束的綁定控件方法之前增加提示信息。刪除一條記錄后,被數(shù)據(jù)庫所約束的綁定控件仍舊顯示該記錄的內(nèi)容。因此,必須移動記錄指針?biāo)⑿陆壎丶话悴捎靡迫耘f顯示該記錄的內(nèi)容。因此,必須移動記錄指針?biāo)⑿陆壎丶?,一般采用移至下一條記錄的處理方法,并檢查至下一條記錄的處理方法,并檢查EOF屬性。屬性。第33頁/共60頁第三十三頁,編輯于星期日:七點 二十九分。數(shù)據(jù)控件數(shù)據(jù)控件Data員工基本信息維護員工基本信息維護3.3.修改記錄修改記錄(1)調(diào)用)調(diào)用Edit方法。方法

43、。(2)給各字段賦值。)給各字段賦值。(3)調(diào)用)調(diào)用Update方法,確定所做的修改。方法,確定所做的修改。提示:提示: 如果要放棄對數(shù)據(jù)的修改,在使用如果要放棄對數(shù)據(jù)的修改,在使用Update方法之前,可使用方法之前,可使用UpdateControls方方法或法或Refresh方法。方法。第34頁/共60頁第三十四頁,編輯于星期日:七點 二十九分。ADO控件與查詢控件與查詢員工工資信息維護員工工資信息維護. .添加控件添加控件要使用要使用ADO控件,必須先將其添加到工具箱中,具體方法如下:控件,必須先將其添加到工具箱中,具體方法如下:(1)單擊)單擊“工程工程”“部件部件”,打開,打開“部

44、件部件”對話框,選擇對話框,選擇Microsoft ADO Data Control 6.0(OLEDB)。(2)單擊)單擊“確定確定”按鈕,即可將按鈕,即可將ADO控件控件 添加到工具箱中。添加到工具箱中。實例演示實例演示-實例實例8.2總總第35頁/共60頁第三十五頁,編輯于星期日:七點 二十九分。ADO控件與查詢控件與查詢員工工資信息維護員工工資信息維護2.2.使用控件使用控件要使要使ADO控件訪問數(shù)據(jù)庫,其實現(xiàn)過程如下:控件訪問數(shù)據(jù)庫,其實現(xiàn)過程如下:(1)在窗體上添加)在窗體上添加ADO數(shù)據(jù)控件。數(shù)據(jù)控件。(2)設(shè)置)設(shè)置ADO控件的控件的“ConnectionString”屬性,建

45、立與數(shù)據(jù)庫提供者的連接。屬性,建立與數(shù)據(jù)庫提供者的連接。(3)設(shè)置)設(shè)置ADO控件的控件的“RecordSource”屬性,定義記錄源和從記錄源中產(chǎn)生記錄集。屬性,定義記錄源和從記錄源中產(chǎn)生記錄集。(4)設(shè)置數(shù)據(jù)綁定控件的)設(shè)置數(shù)據(jù)綁定控件的“DataSource”和和“DataField”屬性,建立記錄集與數(shù)據(jù)屬性,建立記錄集與數(shù)據(jù)綁定控件的聯(lián)系,并在窗體上顯示數(shù)據(jù)供用戶訪問。綁定控件的聯(lián)系,并在窗體上顯示數(shù)據(jù)供用戶訪問。第36頁/共60頁第三十六頁,編輯于星期日:七點 二十九分。ADO控件與查詢控件與查詢員工工資信息維護員工工資信息維護3.ADO3.ADO控件屬性控件屬性右擊添加的右擊添加

46、的ADO控件,選擇控件,選擇“ADODC屬性屬性”,打開,打開“屬性頁屬性頁”對話框:對話框:(1)ConnectionString屬性屬性在對話框中,單擊“生成”,打開“數(shù)據(jù)連接屬性”對話框,選擇“選擇“Microsoft Jet 4.0 OLE DB Provider”;圖8.26 “屬性頁”對話框圖8.27 “數(shù)據(jù)鏈接屬性”對話框第37頁/共60頁第三十七頁,編輯于星期日:七點 二十九分。ADO控件與查詢控件與查詢員工工資信息維護員工工資信息維護3.ADO3.ADO控件屬性控件屬性(1)ConnectionString屬性屬性單擊“下一步”,選擇或輸入數(shù)據(jù)庫名稱,此處只輸入“wages.

47、mdb”,單擊“測試連接”,看是否連接成功。第38頁/共60頁第三十八頁,編輯于星期日:七點 二十九分。ADO控件與查詢控件與查詢員工工資信息維護員工工資信息維護3.ADO3.ADO控件屬性控件屬性(2)RecordSource屬性屬性該屬性用來設(shè)置與ADO連接的數(shù)據(jù)庫中的記錄集。在ADO“屬性頁”對話框中,單擊“記錄源”選項卡,其中有4種命令類型,可從中選擇一種,如圖8.30所示。(1)8-adCmdUnknown:未知,為系統(tǒng)默認值。(2)1-adCmdText:文本命令類型,使用SQL命令。(3)2-adCmdTable:數(shù)據(jù)表。如果數(shù)據(jù)源記錄集是單一表,可使用此方式。(4)3-adCm

48、dstoredProc:存儲過程。圖8.30 “記錄源”選項卡第39頁/共60頁第三十九頁,編輯于星期日:七點 二十九分。ADO控件與查詢控件與查詢員工工資信息維護員工工資信息維護3.ADO3.ADO控件屬性控件屬性(3)Fields屬性屬性Recordset的Fields屬性是一個集合,每個Field(字段)對象對應(yīng)于Recordset中的一列,使用Field對象的Value屬性設(shè)置或返回當(dāng)前記錄的數(shù)據(jù)。如:編號)= 110001 即是對數(shù)據(jù)集中的“編號”字段進行賦值。如果“編號”字段是數(shù)據(jù)集中的第一個字段,還可使用如下方式使用:第40頁/共60頁第四十頁,編輯于星期日:七點 二十九分。AD

49、O控件與查詢控件與查詢員工工資信息維護員工工資信息維護3.ADO3.ADO控件屬性控件屬性(3)Fields屬性屬性Recordset的Fields屬性是一個集合,每個Field(字段)對象對應(yīng)于Recordset中的一列,使用Field對象的Value屬性設(shè)置或返回當(dāng)前記錄的數(shù)據(jù)。如:編號)= 110001 即是對數(shù)據(jù)集中的“編號”字段進行賦值。如果“編號”字段是數(shù)據(jù)集中的第一個字段,還可使用如下方式使用:第41頁/共60頁第四十一頁,編輯于星期日:七點 二十九分。ADO控件與查詢控件與查詢員工工資信息維護員工工資信息維護4.4. 數(shù)據(jù)綁定控件綁定數(shù)據(jù)綁定控件綁定DataGridDataGr

50、id控件控件(1)添加)添加DataGrid控件控件單擊單擊“工程工程”“部件部件”,在打開的對話框中選擇,在打開的對話框中選擇“Microsoft DataGrid Control 6.0(OLEDB)”,將,將DataGrid控件添加到工具箱,在將其繪制到窗體上??丶砑拥焦ぞ呦洌趯⑵淅L制到窗體上。(2)在窗體上放置)在窗體上放置ADO控件并設(shè)置屬性控件并設(shè)置屬性(3)設(shè)置)設(shè)置ADO控件的記錄源控件的記錄源(4)設(shè)置)設(shè)置DataGrid控件的控件的DataSource屬性,將屬性,將DataGrid綁定到綁定到Ado(5)右擊)右擊DataGrid控件,從彈出的快捷菜單中選擇控件,從

51、彈出的快捷菜單中選擇“檢索字段檢索字段”,則,則Ado記錄記錄集中的字段就顯示在集中的字段就顯示在DataGrid控件上。控件上。(6)右擊)右擊DataGrid控件,從彈出的快捷菜單中選擇控件,從彈出的快捷菜單中選擇“屬性屬性”,打開,打開“屬性頁屬性頁”對話框,對話框,可在此設(shè)置可在此設(shè)置DataGrid控件的外觀,如字體,背景,前景,是否有滾動條,是否允許添加、控件的外觀,如字體,背景,前景,是否有滾動條,是否允許添加、刪除、修改等。刪除、修改等。第42頁/共60頁第四十二頁,編輯于星期日:七點 二十九分。ADO控件與查詢控件與查詢員工工資信息維護員工工資信息維護4.4. 數(shù)據(jù)綁定控件綁

52、定數(shù)據(jù)綁定控件綁定DataGridDataGrid控件控件(7)右擊)右擊DataGrid控件,從彈出的快捷菜單中選擇控件,從彈出的快捷菜單中選擇“編輯編輯”,進入數(shù)據(jù)網(wǎng)格字,進入數(shù)據(jù)網(wǎng)格字段布局的編輯狀態(tài),此時,可將鼠標(biāo)放在兩個字段的邊線上,鼠標(biāo)指針變成雙段布局的編輯狀態(tài),此時,可將鼠標(biāo)放在兩個字段的邊線上,鼠標(biāo)指針變成雙向箭頭時,可調(diào)整列寬。右擊需要刪除的字段名,從彈出的快捷菜單中選擇向箭頭時,可調(diào)整列寬。右擊需要刪除的字段名,從彈出的快捷菜單中選擇“刪除刪除”,就可以從,就可以從DataGrid控件中刪除該字段??丶袆h除該字段。圖8.34 DataGrid控件的屬性頁第43頁/共60頁

53、第四十三頁,編輯于星期日:七點 二十九分。ADO控件與查詢控件與查詢員工工資信息維護員工工資信息維護5.5. 實現(xiàn)記錄的添加、刪除和修改實現(xiàn)記錄的添加、刪除和修改(1)ADO控件的方法控件的方法。方法功能AddNew用來在ADO控件的記錄集中添加一條新記錄。添加新記錄之后,可以給記錄的各個字段賦值,并調(diào)用UpdateBatch方法保存修改,或用CancleUpdate方法取消保存。Refresh在數(shù)據(jù)控件的數(shù)據(jù)源運行時如果被改變,通過該方法進行刷新。Move用來移動記錄指針,其格式和功能同Data控件。Find在記錄集中查找滿足條件的記錄,若找到則記錄指針指向該記錄,否則指針指向數(shù)據(jù)集的末尾。

54、UpdateBatch將所有新添加的記錄集或修改以后的內(nèi)容寫入保存。Delete用來刪除當(dāng)前記錄。第44頁/共60頁第四十四頁,編輯于星期日:七點 二十九分。ADO控件與查詢控件與查詢員工工資信息維護員工工資信息維護5.5. 實現(xiàn)記錄的添加、刪除和修改實現(xiàn)記錄的添加、刪除和修改(2)DataGrid控件屬性控件屬性。屬性說明AllowAddNew為True時允許添加新行。AllowUpdate為True時允許更新數(shù)據(jù)。AllowDelete為True時允許刪除數(shù)據(jù)。Columns獲取表示 DataGrid 控件的各列的對象的集合。第45頁/共60頁第四十五頁,編輯于星期日:七點 二十九分。AD

55、O控件與查詢控件與查詢 信息查詢信息查詢1. Select1. Select語句格式語句格式 常見的常見的SelectSelect語句包括六部分,其語法格式為:語句包括六部分,其語法格式為: Select Select 字段名列表字段名列表 From From 表名表名WhereWhere條件條件GroupGroupBy By 分組字段分組字段 Having Having 分組條件分組條件 Order By Order By 字段字段Asc|DescAsc|Desc實例演示實例演示-信息查詢信息查詢第46頁/共60頁第四十六頁,編輯于星期日:七點 二十九分。ADO控件與查詢控件與查詢 信息查詢

56、信息查詢表表8.6 8.6 合計函數(shù)合計函數(shù)合計函數(shù)合計函數(shù)描述描述AVG用來獲得指定字段的平均值COUNT用來返回選定記錄的個數(shù)SUM用來返回特定字段值的總和MAX用來返回指定字段中的最大值MIN用來返回指定字段中的最小值實例演示實例演示-信息統(tǒng)計信息統(tǒng)計第47頁/共60頁第四十七頁,編輯于星期日:七點 二十九分。ADO控件與查詢控件與查詢 信息查詢信息查詢1.1.單表查詢單表查詢2.2.多表查詢多表查詢3.3.統(tǒng)計查詢統(tǒng)計查詢第48頁/共60頁第四十八頁,編輯于星期日:七點 二十九分。報表制作報表制作 實例演示實例演示實例演示實例演示-報表打印報表打印第49頁/共60頁第四十九頁,編輯于星期日:七點 二十九分。報表制作報表制作 制作過程制作過程1.1. 建立數(shù)據(jù)環(huán)境建立數(shù)據(jù)環(huán)境(1)單擊“工程”“添加Data Environment”,打開如圖8.43所示的

溫馨提示

  • 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

提交評論