




已閱讀5頁,還剩43頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
C S VB數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā) 數(shù)據(jù)庫應(yīng)用系統(tǒng)結(jié)構(gòu)VisualBasic快速入門開放數(shù)據(jù)庫連接 ODBC 數(shù)據(jù)訪問接口 ADO VB數(shù)據(jù)庫編程舉例VB開發(fā)數(shù)據(jù)庫應(yīng)用系統(tǒng)實(shí)例分析 1 VB數(shù)據(jù)庫編程舉例 本節(jié)結(jié)合 學(xué)生管理數(shù)據(jù)庫 以及其中的三張表 利用數(shù)據(jù)訪問接口技術(shù)和ADO數(shù)據(jù)控件以及數(shù)據(jù)綁定控件 介紹在VisualBasic中開發(fā)數(shù)據(jù)庫應(yīng)用程序的過程 示例1示例2示例3 2 示例1 示例1說明示例1控件的屬性設(shè)置示例1程序代碼示例1實(shí)現(xiàn)過程展示 3 示例1說明 本示例說明如何利用ADO數(shù)據(jù)控件實(shí)現(xiàn)對(duì)Student表中全部數(shù)據(jù)的瀏覽 以及如何實(shí)現(xiàn)按用戶指定的系查找相應(yīng)學(xué)生信息的功能 數(shù)據(jù)瀏覽方式采用單行瀏覽方式 即一次查看一條記錄 通過本示例我們可以看到 設(shè)置好ADO數(shù)據(jù)控件的屬性后 用戶不需要編制任何代碼就可以實(shí)現(xiàn)對(duì)數(shù)據(jù)的查詢 如果查找條件變化了 用戶只需要編寫很少的代碼就可以實(shí)現(xiàn)對(duì)數(shù)據(jù)源的重新查詢 4 示例1窗體布局 5 其中 學(xué)號(hào) 姓名 性別 年齡 所在系 及 查找系 用標(biāo)簽控件 Label 實(shí)現(xiàn) 對(duì)Student表中的各列數(shù)據(jù)用文本框控件 TextBox 實(shí)現(xiàn) 界面上各文本框控件內(nèi)顯示的內(nèi)容為此文本框的對(duì)象名 ADO數(shù)據(jù)控件對(duì)象名AdodcStudent 查找 命令按鈕的對(duì)象名為 cmdSearch 退出 命令按鈕的對(duì)象名為 cmdExit 6 示例1控件的屬性設(shè)置 7 示例1程序代碼 退出 按鈕單擊 Click 鼠標(biāo)事件程序代碼 查找 按鈕單擊 Click 鼠標(biāo)事件程序代碼窗體加載 Load事件 時(shí)初始化程序代碼 8 退出 按鈕單擊 Click 鼠標(biāo)事件程序代碼 PrivateSubCmdExit Click 退出 按鈕EndEndSub 9 查找 按鈕單擊 Click 鼠標(biāo)事件程序代碼 PrivateSubCmdSearch Click 查找 按鈕IfLen TxtSearchDept Text 0Then 如果用戶指定了系名AdodcStudent CommandType adCmdTextAdodcStudent RecordSource select fromstudentwhereSdept Trim TxtSearchDept Text AdodcStudent Refresh 使所設(shè)置的屬性生效Else 若用戶未指定列名MsgBox 請(qǐng)指定要查找的系 則提示用戶輸入系名EndIfEndSub 10 窗體加載 Load事件 時(shí)初始化程序代碼 PrivateSubForm Load 窗體加載時(shí)初始化查找系的內(nèi)容 初始化要查找的系為空TxtSearchDept Text EndSub 11 示例1實(shí)現(xiàn)過程展示 設(shè)置控件和屬性 12 編寫程序代碼 13 執(zhí)行程序觀察結(jié)果 14 觀察查找前后的結(jié)果 15 示例2 示例2說明示例2控件的屬性設(shè)置示例2程序代碼示例2實(shí)現(xiàn)過程展示 16 示例2說明 示例2在示例1的基礎(chǔ)上增加了兩組供用戶操作的按鈕 一組是為了說明如何實(shí)現(xiàn)數(shù)據(jù)更改操作 即如何使用Recordset對(duì)象的AddNew Update Delete和CancelUpdate方法 另一組是為了說明如何編程控制結(jié)果集中瀏覽記錄的移動(dòng) 即如何使用Recordset對(duì)象的Move方法組 在這個(gè)示例中我們不使用ADO數(shù)據(jù)庫控件移動(dòng)記錄 而是使用四個(gè)命令按鈕實(shí)現(xiàn)此功能 因此在運(yùn)行時(shí)將ADO數(shù)據(jù)控件隱藏起來 17 示例2窗體布局 18 新增各命令按鈕控件的對(duì)象名分別為 添加 命令按鈕 cmdAdd 刪除 命令按鈕 cmdDel 更新 命令按鈕 cmdUpdate 取消 命令按鈕 cmdCancel 第一條 命令按鈕 cmdFirst 上一條 命令按鈕 cmdPrevious 下一條 命令按鈕 cmdNext 末一條 命令按鈕 cmdLast 退出 命令按鈕 cmdExit 19 示例2控件的屬性設(shè)置 示例2窗體上的ADO數(shù)據(jù)控件以及各文本框控件的屬性設(shè)置同示例1 為了在運(yùn)行時(shí)隱藏ADO數(shù)據(jù)控件 我們將AdodcStudent的Visible屬性設(shè)置為 False 20 示例2程序代碼 窗體啟動(dòng)時(shí)的初始化代碼數(shù)據(jù)操作按鈕組代碼 添加 命令按鈕 取消 命令按鈕 刪除 命令按鈕 更新 命令按鈕移動(dòng)指針方法組代碼 第一條 命令按鈕 末一條 命令按鈕 下一條 命令按鈕 上一條 命令按鈕結(jié)束程序代碼 21 窗體啟動(dòng)時(shí)的初始化代碼 PrivateSubForm Load 初始時(shí)使 取消 按鈕為不可用狀態(tài)CmdCancel Enabled FalseEndSub 22 添加 命令按鈕 PrivateSubCmdAdd Click 添加 命令按鈕AdodcStudent Recordset AddNew 使 添加 和 刪除 按鈕為不可用狀態(tài)CmdAdd Enabled FalseCmdDel Enabled False 使 更改 和 取消 按鈕為可用狀態(tài)CmdUpdate Enabled TrueCmdCancel Enabled TrueEndSub 23 取消 命令按鈕 PrivateSubCmdCancel Click 取消 命令按鈕AdodcStudent Recordset CancelUpdate 使 添加 和 刪除 按鈕為可用狀態(tài)CmdAdd Enabled TrueCmdDel Enabled True 使 取消 按鈕為不可用狀態(tài)CmdCancel Enabled FalseEndSub 24 刪除 命令按鈕 PrivateSubCmdDel Click 刪除 命令按鈕DimresAsIntegerres MsgBox 確實(shí)要?jiǎng)h除此行記錄嗎 vbExclamation vbYesNo vbDefaultButton2 提示用戶Ifres vbYesThen 如果確實(shí)要?jiǎng)h除AdodcStudent Recordset DeleteAdodcStudent Recordset MoveNextIfAdodcStudent Recordset EOF TrueThenAdodcStudent Recordset MoveLastEndIfEndIfEndSub 25 更新 命令按鈕 PrivateSubCmdUpdate Click 更新 命令按鈕 將文本框中的當(dāng)前值寫入結(jié)果集相應(yīng)字段中AdodcStudent Recordset Fields Sno Trim TxtSno Text AdodcStudent Recordset Fields Sname Trim TxtSname Text AdodcStudent Recordset Fields Ssex Trim TxtSsex Text AdodcStudent Recordset Fields Sage CInt Trim TxtSage Text AdodcStudent Recordset Fields Sdept Trim TxtSdept Text AdodcStudent Recordset Update 使更新生效 使 添加 和 刪除 按鈕為可用狀態(tài)CmdAdd Enabled TrueCmdDel Enabled TrueCmdCancel Enabled False 使 取消 按鈕為不可用狀態(tài)EndSub 26 第一條 命令按鈕 第一條 命令按鈕PrivateSubCmdFirst Click AdodcStudent Recordset MoveFirstEndSub 27 末一條 命令按鈕 末一條 命令按鈕PrivateSubCmdLast Click AdodcStudent Recordset MoveLastEndSub 28 下一條 命令按鈕 下一條 命令按鈕PrivateSubCmdNext Click AdodcStudent Recordset MoveNextIfAdodcStudent Recordset EOF TrueThen 如果已經(jīng)移到了最后一行之后 則將指針定位在最后一行AdodcStudent Recordset MoveLastEndIfEndSub 29 上一條 命令按鈕 上一條 命令按鈕PrivateSubCmdPrevious Click AdodcStudent Recordset MovePreviousIfAdodcStudent Recordset BOF TrueThen 如果已經(jīng)移到了第一行之前 則將指針定位在第一行AdodcStudent Recordset MoveFirstEndIfEndSub 30 結(jié)束程序代碼 退出 命令按鈕PrivateSubCmdExit Click EndEndSub 31 示例2實(shí)現(xiàn)過程展示 設(shè)置控件和屬性 32 編寫程序代碼 33 執(zhí)行程序觀察結(jié)果 34 示例3 示例3說明示例3控件的屬性設(shè)置示例3程序代碼示例3實(shí)現(xiàn)過程展示 35 示例3說明 示例3在示例1的基礎(chǔ)上增加了一個(gè)窗體 這個(gè)窗體用DataGrid控件顯示數(shù)據(jù) 示例3中的兩個(gè)窗體的布局分別圖1和圖2所示 圖1Form1布局 圖2Form2布局 36 在圖所示的Form1上 當(dāng)用戶單擊 查找 命令按鈕時(shí) 顯示Form2 Form2上DataGrid中的數(shù)據(jù)是根據(jù)Form1中當(dāng)前顯示的學(xué)號(hào)值去查找此學(xué)生的姓名 所修的課程名 課程的學(xué)分以及考試成績(jī) 在Form2上單擊 返回 命令按鈕 對(duì)象名為cmdReturn 可以返回到Form1 并且同時(shí)卸載Form2 37 示例3控件的屬性設(shè)置 Form1窗體上各控件屬性的設(shè)置同示例1 Form2窗體DataGrid數(shù)據(jù)綁定控件的對(duì)象名為 dtgCondDtgCond控件的列屬性在程序代碼中設(shè)置 ADO數(shù)據(jù)控件名為 AdodcGridConnectionString屬性的值同示例1的AdodcStudentCommandType和RecordSource屬性我們?cè)诔绦虼a中設(shè)置 38 示例3程序代碼 Form1上的 查找 和 退出 命令按鈕代碼Form2上的代碼Form2上的初始化dtgCond控件代碼Form2上的Load事件代碼Form2上 返回 按鈕代碼 39 Form1上的 查找 和 退出 命令按鈕代碼 PrivateSubCmdExit Click 退出 按鈕EndEndSubPrivateSubCmdSearch Click 查找 按鈕Form2 Show 顯示Form2窗體EndSub 40 Form2上的初始化dtgCond控件代碼 PrivateSubInitGrid 初始化dtgCond控件WithDtgCond 設(shè)置DtgCond的列標(biāo)題 Columns 0 Caption 學(xué)號(hào) Columns 1 Caption 課程名 Columns 2 Caption 學(xué)分 Columns 3 Caption 成績(jī) 設(shè)置DtgCond的列寬 Columns 0 Width 1000 Columns 1 Width 2000 Columns 2 Width 800 Columns 3 Width 800EndWithEndSub 41 Form2上的Load事件代碼 PrivateSubForm Load DimstrSnoAsStringDimstrSelectAsStringstrSno Trim Form1 TxtSno Text 得到Form1窗體上當(dāng)前顯示的學(xué)號(hào)的值 編寫滿足要求的查詢語句 查找學(xué)號(hào)值等于給定值的學(xué)生的姓名 修的課程名 學(xué)分和成績(jī)strSelect selectSname Cname Ccredit Gradefromstudentsjoinsc ons sno o owhere sc sno strSno 設(shè)置ADO數(shù)據(jù)控件相應(yīng)的屬性AdodcGrid CommandType adCmdTextAdodcGrid RecordSource strSelectAdodcGrid Refresh 使
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 家庭農(nóng)場(chǎng)運(yùn)輸協(xié)議書范本
- 電梯合作協(xié)議書范本
- 家庭戰(zhàn)火離婚協(xié)議書范本
- 離婚財(cái)產(chǎn)分割協(xié)議樣本合理分配資產(chǎn)
- 歐洲旅游團(tuán)導(dǎo)游派遣及培訓(xùn)服務(wù)合同
- 項(xiàng)目眾籌協(xié)議書范本
- 車輛贈(zèng)與及保險(xiǎn)理賠責(zé)任劃分合同
- 新能源產(chǎn)業(yè)股份低價(jià)轉(zhuǎn)讓與政策優(yōu)惠對(duì)接協(xié)議
- 房屋補(bǔ)償分配協(xié)議書范本
- 離婚財(cái)產(chǎn)分割變更協(xié)議重新起訴狀
- 復(fù)合不定代詞
- 2023年06月湖北孝感市檢察機(jī)關(guān)招考聘用雇員制檢察輔助人員73人筆試題庫含答案詳解
- 電力市場(chǎng)交易體系規(guī)則培訓(xùn)PPT
- 內(nèi)河船員(一類)輪機(jī)實(shí)操考試資料二三管輪
- 抽樣檢驗(yàn)知識(shí)培訓(xùn)
- 急性肺栓塞搶救流程
- 零件清理、精整作業(yè)指導(dǎo)書
- 2023年廣東省廣州市南沙區(qū)萬頃沙鎮(zhèn)社區(qū)工作人員考試模擬題含答案
- GB/T 9634.8-2018鐵氧體磁心表面缺陷極限導(dǎo)則第8部分:PQ型磁心
- GB/T 1094.16-2013電力變壓器第16部分:風(fēng)力發(fā)電用變壓器
- GA 1016-2012槍支(彈藥)庫室風(fēng)險(xiǎn)等級(jí)劃分與安全防范要求
評(píng)論
0/150
提交評(píng)論