版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第9章數(shù)據(jù)庫訪問VisualBasic程序設(shè)計教程本章內(nèi)容安排關(guān)系數(shù)據(jù)庫及其應(yīng)用關(guān)系數(shù)據(jù)庫概述SQL及其應(yīng)用利用ADO控件訪問數(shù)據(jù)庫利用ADO對象訪問數(shù)據(jù)庫關(guān)系數(shù)據(jù)庫概述關(guān)系數(shù)據(jù)庫數(shù)據(jù)表字段記錄主鍵數(shù)據(jù)庫操作投影合并SQL及其應(yīng)用SQL是通用的數(shù)據(jù)庫語言,幾乎為所有的關(guān)系數(shù)據(jù)庫管理系統(tǒng)所支持。SQL可用來編寫查詢或操作數(shù)據(jù)庫的命令,在數(shù)據(jù)庫管理系統(tǒng)的驅(qū)動下實施對數(shù)據(jù)庫的一切訪問(創(chuàng)建、維護和查詢)。SQL及其應(yīng)用對數(shù)據(jù)庫的操作插入記錄刪除記錄修改記錄查詢數(shù)據(jù)SQL及其應(yīng)用對數(shù)據(jù)庫的操作插入記錄
insertintoEmployees (工號,姓名,所屬部門,工資) values(1201,'吳昊','市場部',3500)刪除記錄修改記錄查詢數(shù)據(jù)SQL及其應(yīng)用對數(shù)據(jù)庫的操作插入記錄刪除記錄
deletefromEmployees where工號=1201修改記錄查詢數(shù)據(jù)SQL及其應(yīng)用對數(shù)據(jù)庫的操作插入記錄刪除記錄修改記錄
updateEmployees set工資=工資*1.2 where工號=1201查詢數(shù)據(jù)SQL及其應(yīng)用對數(shù)據(jù)庫的操作插入記錄刪除記錄修改記錄查詢數(shù)據(jù)
select姓名,所屬部門,工資 fromEmployees where所屬部門='市場部'本章內(nèi)容安排關(guān)系數(shù)據(jù)庫及其應(yīng)用利用ADO控件訪問數(shù)據(jù)庫ADO控件DataGrid控件ADO控件的操作DataGrid控件的操作利用ADO對象訪問數(shù)據(jù)庫ADO技術(shù)簡介在VisualBasic程序中,并不能直接使用SQL命令。ADO技術(shù)是訪問數(shù)據(jù)庫的最佳途徑。Microsoft既提供了ADO控件、也提供了沒有界面的ADO對象用于創(chuàng)建數(shù)據(jù)庫應(yīng)用程序。ADO控件和DataGrid控件第一個任務(wù):把數(shù)據(jù)庫中的數(shù)據(jù)表按照表格的形式顯示在Form窗體中。完成這個任務(wù)既要使用ADO控件,又要使用DataGrid控件。ADO控件是提供數(shù)據(jù)的數(shù)據(jù)源控件。它從數(shù)據(jù)庫中查詢并返回有關(guān)數(shù)據(jù)(稱為記錄集)。DataGrid控件是利用數(shù)據(jù)的綁定控件,它能使數(shù)據(jù)按表格的形式顯示出來。ADO控件和DataGrid控件向工具箱添加ADO控件和DataGrid控件從【工程】菜單里選擇【組件…】,顯示【組件對話框】;在這個對話框中選擇MicrosoftADODataControl6.0選項;再選擇MicrosoftDataGridControl6.0選項;最后,關(guān)閉這個對話框,ADO數(shù)據(jù)控件和DataGrid綁定控件即進入工具箱中。ADO控件和DataGrid控件設(shè)置
ADO
數(shù)據(jù)控件,使其成為數(shù)據(jù)源。主要在屬性對話框中設(shè)置以下屬性:ConnectionString屬性,設(shè)置為提供數(shù)據(jù)庫信息的連接字符串。RecordSource屬性,設(shè)置為SQL的select命令或存儲過程名稱。同時應(yīng)指定命令類型。把
DataGrid
控件綁定到數(shù)據(jù)源
ADO
控件。主要設(shè)置其一個屬性:DataSource屬性,將其設(shè)定為ADO控件即可。ADO控件的操作主要有以下4種操作:使記錄指針移到第一條記錄;使記錄指針移到上一條記錄;使記錄指針移到下一條記錄;使記錄指針移到最后一條記錄。DataGrid控件的操作PageUp鍵和PageDown鍵:可在記錄集中前后翻頁。光標(biāo)上、下鍵:可從一條記錄移到另一條記錄。使用窗口右邊的垂直滾動條可上下翻看記錄。光標(biāo)左、右鍵:可從一個字段移到另一個字段。當(dāng)然也可以用鼠標(biāo)直接點選某個字段(單元格)。當(dāng)鼠標(biāo)定位在列分界線上并出現(xiàn)伸縮豎線時,按住鼠標(biāo)左鍵,拖動伸縮豎線可擴大或減小列的寬度。DataGrid控件的主要屬性AllowAddNew:設(shè)為True時,當(dāng)光標(biāo)移到最后時會添加一條新記錄。AllowDelete:設(shè)為True時,可按鍵盤上的Del或Delete鍵刪除當(dāng)前記錄。AllowUpdate:設(shè)為True,則當(dāng)移動記錄指針時,對前條記錄所做的修改將會被保存。設(shè)為False,可防止修改。DataSource:將其設(shè)置為某個數(shù)據(jù)源(ADO數(shù)據(jù)控件、或后面要介紹的Recordset對象),即可按表格的形式顯示其中的數(shù)據(jù)。本章內(nèi)容安排關(guān)系數(shù)據(jù)庫及其應(yīng)用利用ADO控件訪問數(shù)據(jù)庫利用ADO對象訪問數(shù)據(jù)庫連接到數(shù)據(jù)庫操作數(shù)據(jù)庫利用查詢結(jié)果利用ADO對象訪問數(shù)據(jù)庫我們需要更靈活地控制對數(shù)據(jù)庫的訪問。對數(shù)據(jù)庫的不同訪問,其實可以共享一個數(shù)據(jù)庫連接,而不需要為每個查詢都建立一個數(shù)據(jù)庫連接。當(dāng)不需要某個查詢時,相應(yīng)的對象可以隨時關(guān)閉并釋放,不會始終占用著系統(tǒng)資源。實際開發(fā)都要使用ADO對象。當(dāng)然,使用ADO對象,意味著編程人員需要編寫更多的代碼。利用ADO對象訪問數(shù)據(jù)庫ADO基本的對象有三個,代表了訪問數(shù)據(jù)庫的三個步驟:連接數(shù)據(jù)庫。由Connection對象負責(zé)。訪問操作數(shù)據(jù)庫。由Command對象負責(zé)。查詢操作的結(jié)果,由Recordset對象表示。利用ADO對象訪問數(shù)據(jù)庫在使用ADO對象之前,需要在自己的工程中添加對ADODB對象庫的引用,否則,無法使用任何ADO對象。方法是:展開菜單【工程】【引用】;在引用對話框中,找到并選擇“MicrosoftActiveXDataObjects2.xLibrary”。連接到數(shù)據(jù)庫用Connection對象連接到數(shù)據(jù)庫。步驟如下:創(chuàng)建Connection對象設(shè)置ConnectionString屬性調(diào)用Open方法連接到數(shù)據(jù)庫用Connection對象連接到數(shù)據(jù)庫。步驟如下:創(chuàng)建Connection對象DimconAsADODB.ConnectionSetcon=newADODB.Connection設(shè)置ConnectionString屬性調(diào)用Open方法連接到數(shù)據(jù)庫用Connection對象連接到數(shù)據(jù)庫。步驟如下:創(chuàng)建Connection對象設(shè)置ConnectionString屬性con.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource=D:\db\Goods.mdb"調(diào)用Open方法連接到數(shù)據(jù)庫用Connection對象連接到數(shù)據(jù)庫。步驟如下:創(chuàng)建Connection對象設(shè)置ConnectionString屬性con.ConnectionString="Provider=SQLOLEDB; DataSource=(local); InitialCatalog=Northwind; IntegratedSecurity=SSPI"調(diào)用Open方法連接到數(shù)據(jù)庫用Connection對象連接到數(shù)據(jù)庫。步驟如下:創(chuàng)建Connection對象設(shè)置ConnectionString屬性調(diào)用Open方法con.Open連接到數(shù)據(jù)庫DimconAsNewADODB.ConnectionPrivateSubForm_Load()OnErrorGoToHandlecon.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource=D:\db\Goods.mdb"con.OpenMsgBox"連接成功"ExitSubHandle:MsgBox"連接失敗"EndSub連接到數(shù)據(jù)庫當(dāng)此連接不再需要時,可以調(diào)用Close方法將其關(guān)閉,然后釋放。con.Close '關(guān)閉Setcon=Nothing '釋放操作訪問數(shù)據(jù)庫ADO的Command對象表示對數(shù)據(jù)庫的操作命令。通過Command對象,既可以進行數(shù)據(jù)庫各種對象的定義,如建立數(shù)據(jù)表、建立各種約束等,也可以對數(shù)據(jù)庫中的數(shù)據(jù)進行諸如添加、刪除、修改及查詢等操作。操作數(shù)據(jù)庫一般按以下方式進行:創(chuàng)建Command對象設(shè)置CommandType屬性設(shè)置CommandText屬性調(diào)用Execute方法操作數(shù)據(jù)庫一般按以下方式進行:創(chuàng)建Command對象DimcomAsNewADODB.CommandSetcom.ActiveConnection=con設(shè)置CommandType屬性設(shè)置CommandText屬性調(diào)用Execute方法操作數(shù)據(jù)庫一般按以下方式進行:創(chuàng)建Command對象設(shè)置CommandType屬性com.CommandType=AdCmdText設(shè)置CommandText屬性調(diào)用Execute方法操作數(shù)據(jù)庫一般按以下方式進行:創(chuàng)建Command對象設(shè)置CommandType屬性設(shè)置CommandText屬性com.CommandText="deleteGoodswhere工號=1201"調(diào)用Execute方法操作數(shù)據(jù)庫一般按以下方式進行:創(chuàng)建Command對象設(shè)置CommandType屬性設(shè)置CommandText屬性調(diào)用Execute方法com.Execute利用查詢結(jié)果Recordset對象表示的是從數(shù)據(jù)庫中查詢的結(jié)果——記錄的集合,并支持對其中的數(shù)據(jù)進行各種操作或處理。使用Recordset對象的一般方式為:創(chuàng)建對象調(diào)用Open方法利用查詢結(jié)果Recordset對象表示的是從數(shù)據(jù)庫中查詢的結(jié)果——記錄的集合,并支持對其中的數(shù)據(jù)進行各種操作或處理。使用Recordset對象的一般方式為:創(chuàng)建對象DimrstAsADODB.Recordsetsetrst=NewADODB.Recordset調(diào)用Open方法Recordset.Openrst.OpenSource,ActiveConnection,CursorType,LockType,OptionsSource可為Command對象、SQL語句、表名、存儲過程名。建議使用Command對象,這樣就不用設(shè)置后面參數(shù)Options。Recordset.Openrst.OpenSource,ActiveConnection,CursorType,LockType,OptionsActiveConnection用于指定所屬的Connection對象。Recordset.Openrst.OpenSource,ActiveConnection,CursorType,LockType,OptionsCursorType:用于設(shè)置游標(biāo)類型。adOpenForwardOnly:僅向前游標(biāo)。adOpenKeyset:鍵集游標(biāo)。只對更改敏感。adOpenDynamic :動態(tài)游標(biāo)。最敏感。adOpenStatic:靜態(tài)游標(biāo)。不敏感。Recordset.Openrst.OpenSource,ActiveConnection,CursorType,LockType,OptionsLockType:用于設(shè)置鎖定類型。adLockReadOnly:只讀。adLockPessimistic :保守式記錄鎖定。adLockOptimistic 開放式記錄鎖定。adLockBatchOptimistic 開放式批更新。Recordset.Openrst.OpenSource,ActiveConnection,CursorType,LockType,OptionsOptions:用于指明參數(shù)Source的類別。adCmdText:SQL命令文本adCmdTable:數(shù)據(jù)表名稱adCmdStoredProc:存儲過程名稱Recordset對象——移動記錄指針包括4個移動方法,分別是:MoveFirst:移到第一條記錄MovePrevious:移到上一條記錄MoveNext:移到下一條記錄MoveLast:移到最后一條記錄Recordset對象——移動記錄指針當(dāng)移動記錄指針時,需要隨時判斷指針的狀態(tài),有以下兩個屬性:BOF:為True時,表示指針在向前移動時,超過了第一條記錄的位置。EOF:為True時,表示指針在向后移動時,超過了最后一條記錄的位置。Recordset對象——操作數(shù)據(jù)AddNewDeleteUpdateUpdateBatchFindcriteria,Skip,Direction,startRecordset對象——操作數(shù)據(jù)AddNew該方法向Recordset對象中添加一條新記錄,并使新記錄成為當(dāng)前記錄。DeleteUpdateUpdateBatchFindcriteria,Skip,Direction,startRecordset對象——操作數(shù)據(jù)AddNewDelete該方法會刪除Recordset對象中的當(dāng)前記錄。對于立即更新模式,將在數(shù)據(jù)庫中立即刪除。UpdateUpdateBatchFindcriteria,Skip,Direction,startRecordset對象——操作數(shù)據(jù)AddNewDeleteUpdate把Recordset對象中已有變化的數(shù)據(jù)更新到數(shù)據(jù)庫中。用于立即更新模式。UpdateBatchFindcriteria,Skip,Direction,startRecordset對象
溫馨提示
- 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. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 蘇州科技大學(xué)天平學(xué)院《室內(nèi)陳設(shè)藝術(shù)設(shè)計一》2021-2022學(xué)年第一學(xué)期期末試卷
- 承壓類特種設(shè)備安全管理考核試卷
- 《口腔修復(fù)學(xué)簡介》課件
- 公共設(shè)施維修與保養(yǎng)考核試卷
- 如何編制有效的消防預(yù)案考核試卷
- 農(nóng)業(yè)科學(xué)與農(nóng)產(chǎn)品原料考核試卷
- 《玉米加工》課件
- 2024個人向公司借款合同樣本
- 蘇州科技大學(xué)天平學(xué)院《精密與特種加工》2021-2022學(xué)年第一學(xué)期期末試卷
- 紡織印染企業(yè)安全生產(chǎn)風(fēng)險分級管控和隱患排查治理雙體系培訓(xùn)
- 長沙市某辦公建筑的冰蓄冷空調(diào)系統(tǒng)的設(shè)計畢業(yè)設(shè)計
- 不抱怨的世界(課堂PPT)
- 企業(yè)盈利能力分析——以青島啤酒股份有限公司為例
- 消火栓滅火器檢查記錄表
- 岸墻、翼墻及導(dǎo)水墻砼澆筑方案
- 第三章_配位化學(xué)
- 中國話-完整版PPT課件
- 纏論基本概念圖解(推薦)
- 海瑞克英文翻譯
- 培訓(xùn)師經(jīng)常用到的七大培訓(xùn)方式及操作方法
- 魯教版美術(shù)九年級下冊教學(xué)設(shè)計
評論
0/150
提交評論