




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
16.1數(shù)據(jù)庫概念數(shù)據(jù)庫表
數(shù)據(jù)庫就是一組排列成易于處理和讀取的相關(guān)信息的集合。關(guān)系模型已經(jīng)成為數(shù)據(jù)庫設(shè)計(jì)事實(shí)上的標(biāo)準(zhǔn)。關(guān)系型數(shù)據(jù)庫模型
一個(gè)數(shù)據(jù)庫可以由多個(gè)表組成,表與表之間可以用不同的方式相互關(guān)聯(lián)。若第一個(gè)表中的一條記錄內(nèi)容與第二個(gè)表中多條記錄的數(shù)據(jù)相符,但第二個(gè)表中的一條記錄只能與第一個(gè)表的一條記錄的數(shù)據(jù)相符,這樣的表間關(guān)系類型叫做一對(duì)多關(guān)系。
若第一個(gè)表的一條記錄的數(shù)據(jù)內(nèi)容可與第二個(gè)表的多條記錄的數(shù)據(jù)相符,反之亦然,這樣的表間關(guān)系類型叫做多對(duì)多關(guān)系。一對(duì)多關(guān)系
可以將一個(gè)或幾個(gè)表中的數(shù)據(jù)構(gòu)成記錄集Recordset對(duì)象,記錄集也由行和列構(gòu)成,它與表類似。學(xué)號(hào)課程成績(jī)990001數(shù)學(xué)85學(xué)號(hào)姓名性別專業(yè)出生日期990001萬林男物理82-1-11990002莊前女物理82-9-21。。。。。。。。。。。。。。。
(表一)數(shù)據(jù)庫記錄集學(xué)號(hào)姓名專業(yè)課程成績(jī)990001萬林物理數(shù)學(xué)85990002莊前物理外語90。。。。。。。。。。。。。。在VB中數(shù)據(jù)庫內(nèi)的表格不允許直接訪問,而只能通過記錄集對(duì)象進(jìn)行記錄的操作和瀏覽,因此,記錄集是一種瀏覽數(shù)據(jù)庫的工具。數(shù)據(jù)庫記錄集16.2數(shù)據(jù)庫管理器
VB的數(shù)據(jù)庫管理器(Visdata.exe)可用于管理數(shù)據(jù)庫。在VB開發(fā)環(huán)境內(nèi)單擊”外接程序/可視化數(shù)據(jù)管理器”命令可打開可視數(shù)據(jù)管理器。數(shù)據(jù)庫管理器使用小結(jié):1.建立新表:鼠標(biāo)右鍵單擊數(shù)據(jù)庫窗口,彈出菜單,選擇對(duì)應(yīng)命令。2.打開、刪除表,修改表結(jié)構(gòu)和建立表間的關(guān)聯(lián)等操作:右鍵單擊數(shù)據(jù)庫窗口內(nèi)的表名,彈出菜單,選擇對(duì)應(yīng)命令。3.編輯記錄:雙擊表名,打開表格輸入窗,編輯、增刪記錄。
建立Student.mdb
數(shù)據(jù)庫,所含學(xué)生基本情況表結(jié)構(gòu)如下:16.3數(shù)據(jù)控件工具箱內(nèi)數(shù)據(jù)控件圖標(biāo)形狀畫在窗體上的外觀16.3.1數(shù)據(jù)控件注:RecordSource屬性可以是數(shù)據(jù)庫中的單個(gè)表名,也可以是使用SQL查詢語言的一個(gè)查詢字符串。如果連接的是單表數(shù)據(jù)庫,則DatabaseName屬性應(yīng)設(shè)置為數(shù)據(jù)庫文件所在的子目錄名,而具體文件名放在RecordSource屬性中。能夠利用三種記錄集對(duì)象訪問數(shù)據(jù)庫中的數(shù)據(jù),連接方法:數(shù)據(jù)庫記錄集綁定控件姓名莊前性別女
數(shù)據(jù)控件只能連接數(shù)據(jù)庫產(chǎn)生記錄集,不能顯示記錄集中的數(shù)據(jù),要顯示記錄集中的數(shù)據(jù)必須通過能與它綁定的控件來實(shí)現(xiàn)。常用綁定控件綁定控件具有DataSource
和DataField兩個(gè)重要屬性,其作用如下:Data控件、記錄集與綁定控件記錄集學(xué)號(hào)姓名專業(yè)課程成績(jī)990001萬林物理數(shù)學(xué)85990002莊前物理外語90。。。。。。。。。。。。。。數(shù)據(jù)庫例16.2用一個(gè)數(shù)據(jù)網(wǎng)格控件MsFlexGrid顯示Student.mdb數(shù)據(jù)庫中基本情況表的內(nèi)容。例16.1
設(shè)計(jì)一個(gè)窗體顯示在11.2節(jié)中建立的的Student.mdb數(shù)據(jù)庫中基本情況表的內(nèi)容。屬性:Rows、Cols(網(wǎng)格的行或列數(shù));FixedRows
、FixedCols
(不可卷動(dòng)的行或列數(shù))。16.3.2數(shù)據(jù)控件的事件16.3.3數(shù)據(jù)控件的常用方法Refresh16.3.4記錄集的屬性與方法1.屬性EofBofBookMark
RecordCount2.記錄集的方法
MoveLastMoveFirstMoveNextMovePreviousFindFirst、FindLast、FindNext、FindPrevious方法可在指定的Dynaset或Snapshot類型的記錄集對(duì)象中查找。Seek方法在Table表中查找。
Nomarch屬性可判定是否找到。Data1.Recordset.FindFirst
"姓名='黎明'"Nomarch=False16.3.5記錄的增刪改操作Data1.Recordset.AddNew
增加記錄數(shù)據(jù)庫UpData填入新數(shù)據(jù)編輯記錄 刪除記錄調(diào)用Edit方法。 調(diào)用Delete方法。給各字段賦值。 移動(dòng)記錄指針。調(diào)用Update方法。16.4ADO數(shù)據(jù)控件
ADO是Microsoft處理數(shù)據(jù)庫信息的最新技術(shù),它是一種ActiveX對(duì)象,采用了被稱為OLEDB的數(shù)據(jù)訪問模式。它是數(shù)據(jù)訪問對(duì)象DAO、遠(yuǎn)程數(shù)據(jù)對(duì)象RDO和開放數(shù)據(jù)庫互連ODBC三種方式的擴(kuò)展。ADO對(duì)象模型更為簡(jiǎn)化,不論是存取本地的還是遠(yuǎn)程的數(shù)據(jù),都提供了統(tǒng)一的接口。16.4.2使用ADO數(shù)據(jù)控件16.4.1ADO對(duì)象模型在使用ADO數(shù)據(jù)控件前,必須先通過“工程/部件”菜單命令選擇“MicrosoftADODataControl6.0(OLEDB)”選項(xiàng),將ADO數(shù)據(jù)控件添加到工具箱。ADO數(shù)據(jù)控件與VisualBasic的內(nèi)部數(shù)據(jù)控件很相似,它允許使用ADO數(shù)據(jù)控件的基本屬性快速地創(chuàng)建與數(shù)據(jù)庫的連接。工具箱內(nèi)ADO控件圖標(biāo)形狀畫在窗體上的外觀能夠利用三種記錄集對(duì)象訪問數(shù)據(jù)庫中的數(shù)據(jù),連接方法:連接操作------鼠標(biāo)右擊ADO控件,選擇快捷菜單“ADODC屬性”命令,打開ADO控件屬性頁窗:?jiǎn)螕暨x定選定數(shù)據(jù)庫選定設(shè)置完成后,ADO控件的ConnectionString屬性為:Provider=Microsoft.Jet.OLEDB.3.51;PersistSecurityInfo=False;DataSource=Student.mdbRecordSource屬性為:基本情況(表)ADO控件的的其他操作與Data控件相同。16.4.3ADO控件上綁定控件的使用MSFlexGridMSHFlexGridDataGridMSChartDataComboDataList16.4.4使用數(shù)據(jù)窗體向?qū)?/p>
通過數(shù)據(jù)窗體向?qū)芙⒁粋€(gè)訪問數(shù)據(jù)的窗口。在使用前必須執(zhí)行“外接程序/外接程序管理器”命令,將“VB6數(shù)據(jù)窗體向?qū)А毖b入到“外接程序”菜單中。步驟1:執(zhí)行“外接程序”菜單中的“數(shù)據(jù)窗體向?qū)А泵?。步驟2:選擇數(shù)據(jù)庫類型。數(shù)據(jù)庫步驟3:選擇具體的數(shù)據(jù)庫文件。步驟4:設(shè)置應(yīng)用窗體的工作特性。步驟5:選擇記錄源(所需要的實(shí)際數(shù)據(jù))。步驟6:選擇所需要的操作按鈕。例11.716.5結(jié)構(gòu)化查詢語言(SQL)16.5.1結(jié)構(gòu)化查詢語言結(jié)構(gòu)化查詢語言SQL是操作數(shù)據(jù)庫的工業(yè)標(biāo)準(zhǔn)語言。在SQL語言中,指定要做什么而不是怎么做。不需要告訴SQL如何訪問數(shù)據(jù)庫,只要告訴SQL需要數(shù)據(jù)庫做什么。利用SQL,可以確切指定想要檢索的記錄以及按什么順序檢索??梢栽谠O(shè)計(jì)或運(yùn)行時(shí)對(duì)數(shù)據(jù)控件使用SQL語句。用戶提出一個(gè)查詢,數(shù)據(jù)庫返回所有與該查詢匹配的記錄。16.5.2
使用SELECT語句查詢1.使用SELECT語句從數(shù)據(jù)庫中的獲取數(shù)據(jù)稱為查詢數(shù)據(jù)庫,查詢數(shù)據(jù)庫通過使用SELECT語句。常見的SELECT語句形式為:Select
字段表
From
表名Where查詢條件
GroupBy
分組字段OrderBy
字段[Asc|Desc]
可以在設(shè)計(jì)或代碼中對(duì)數(shù)據(jù)控件的RecordSource屬性設(shè)置SQL語句,也可將SQL語句賦予對(duì)象變量。在建立SQL語句時(shí),如果需要通過變量構(gòu)造條件,則需要在應(yīng)用程序中將變量連接到SELECT語句。例如:
"Select*From基本情況Where專業(yè)='"&Text1&"
'"
例16.11在ADO數(shù)據(jù)控件上使用SQL語句。將例11.9中的Data控件改用ADO數(shù)據(jù)控件,用SQL語句從Student.mdb數(shù)據(jù)庫的兩個(gè)數(shù)據(jù)表中選擇數(shù)據(jù)構(gòu)成記錄集。例16.12設(shè)計(jì)一個(gè)窗體,計(jì)算Student.mdb數(shù)據(jù)庫內(nèi)學(xué)生成績(jī)表中每個(gè)學(xué)生的平均成績(jī),產(chǎn)生姓名、平均成績(jī)和最低成績(jī)?nèi)?xiàng)數(shù)據(jù),按平均成績(jī)升序排列數(shù)據(jù),并用該數(shù)據(jù)作圖。*2.使用UPDATE語句修改記錄UPDATE創(chuàng)建一個(gè)更新查詢來按照某個(gè)條件修改特定表中的字段值。其語法如下:
UPDATE[表集合]SET[表達(dá)式]WHERE[條件]例16.12a本例把學(xué)生平均成績(jī)字段的值增加了10%,并刷新網(wǎng)格。*3.使用DELETE語句查詢
可以創(chuàng)建刪除查詢來刪除FROM子句中列出的、滿足WHERE子句的一個(gè)或多個(gè)表中的記錄,其語法所示如下:
DELETE[表字段]FROM[表集合]WHERE[條件]例16.12b刪除例11.12a所產(chǎn)生temp表中平均成績(jī)<80的全部記錄,并刷新網(wǎng)格。*16.5.3使用對(duì)象變量訪問數(shù)據(jù)庫
DAO對(duì)象定義了一個(gè)可編程的對(duì)象集合??砂聪铝蟹椒ǘx數(shù)據(jù)庫對(duì)象和記錄集對(duì)象,不必在窗體上放置數(shù)據(jù)控件。要想在程序中使用DAO對(duì)象,必須先為當(dāng)前工程引用DAO對(duì)象的數(shù)據(jù)庫引擎庫。引用方式:執(zhí)行工程菜單的引用命令,啟動(dòng)引用對(duì)話框,在清單中選取“MicrosoftDAO3.51ObjectLibrary”項(xiàng)目。例16.12e
使用DAO模型訪問數(shù)據(jù)庫,約束綁定控件。
記錄集的字段對(duì)象可以使用如下幾種方法獲取:Recordset.Fields("字段名稱")、Recordset("字段名稱")Recordset.Field
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 世界血栓日宣傳活動(dòng)方案
- 業(yè)主夏日活動(dòng)方案
- 業(yè)主群眾獻(xiàn)愛心活動(dòng)方案
- 業(yè)務(wù)團(tuán)隊(duì)活動(dòng)方案
- 地推招生活動(dòng)策劃方案
- 大拼圖企業(yè)活動(dòng)方案
- 大班慶祝元旦活動(dòng)方案
- 地產(chǎn)單位活動(dòng)方案
- 多人一起玩游戲活動(dòng)方案
- 地震科普班會(huì)活動(dòng)方案
- 中國(guó)傳統(tǒng)禮儀全課件
- 新北師大版七年級(jí)下冊(cè)生物教案全冊(cè)
- 饋線自動(dòng)化-集中型饋線自動(dòng)化(配電自動(dòng)化)
- 《膽腸吻合技術(shù)》課件
- 圍手術(shù)期患者疼痛管理課件
- 2024年度-2025年度XX村第三輪土地延包工作總結(jié)
- 2025年江蘇新海連發(fā)展集團(tuán)有限公司招聘筆試參考題庫含答案解析
- 低碳航空器結(jié)構(gòu)設(shè)計(jì)-深度研究
- 雙重預(yù)防機(jī)制建設(shè)方案
- 2025山東產(chǎn)權(quán)交易中心招聘21人易考易錯(cuò)模擬試題(共500題)試卷后附參考答案
- 《煤礦運(yùn)輸系統(tǒng)課件》課件
評(píng)論
0/150
提交評(píng)論