資源描述:
《4.1使用VB訪問(wèn)數(shù)據(jù)庫(kù)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、4.1使用VB訪問(wèn)數(shù)據(jù)庫(kù)1.使用ADO訪問(wèn)Access數(shù)據(jù)庫(kù)(1)ADO的概念A(yù)DO(ActivexDataOjbects)是微軟公司提供的-種新的數(shù)據(jù)庫(kù)的存取技術(shù),是應(yīng)用程序訪問(wèn)數(shù)據(jù)庫(kù)的編程接口。通過(guò)ADO來(lái)可引用包括SQLServer、Oracle、ACCESS等數(shù)據(jù)庫(kù)、甚至EXCEL表格、文本文件、圖形文件和無(wú)格式的數(shù)據(jù)文件在內(nèi)的任何一種OLEDB數(shù)據(jù)源。該接口主要包含了三個(gè)對(duì)象成員(可編程對(duì)象集合):Connection對(duì)象、Command對(duì)象和Recordset對(duì)象。各對(duì)象成員中,還包含了幾個(gè)集合對(duì)象:Errors、Parameters、Fi
2、elds、Properties。第四章 算法在數(shù)據(jù)管理中的應(yīng)用①Connection對(duì)象(連接對(duì)象)Connection對(duì)象用于建立與數(shù)據(jù)庫(kù)的連接,通過(guò)連接可從應(yīng)用程序訪問(wèn)數(shù)據(jù)源。它保存諸如指針類(lèi)型、連接字符串、查詢(xún)超時(shí)、連接超時(shí)和缺省數(shù)據(jù)庫(kù)這樣的連接信息。②Command對(duì)象(命令對(duì)象)在建立Connection后,可以發(fā)出命令操作數(shù)據(jù)源。一般情況下,Command對(duì)象可以在數(shù)據(jù)庫(kù)中添加,刪除或更新數(shù)據(jù),或者在表中進(jìn)行數(shù)據(jù)查詢(xún)。Command對(duì)象在定義查詢(xún)參數(shù)或執(zhí)行一個(gè)有輸出參數(shù)的存儲(chǔ)過(guò)程時(shí)非常有用。③Recordset對(duì)象(記錄集對(duì)象)用來(lái)存儲(chǔ)數(shù)據(jù)
3、操作返回的記錄集。Recordset對(duì)象只代表一個(gè)記錄集,這個(gè)記錄集是一個(gè)連接的數(shù)據(jù)庫(kù)中的表,或者是Command對(duì)象的執(zhí)行結(jié)果返回的記錄集。在ADO對(duì)象模型中,是在行中檢查和修改數(shù)據(jù)的最主要的方法,所有對(duì)數(shù)據(jù)的操作幾乎都是在Recordset對(duì)象中完成的。Record對(duì)象用于指定行、移動(dòng)行、添加、更改、刪除記錄。(2)ADO對(duì)象基本操作流程①初始化COM庫(kù),引入ADO庫(kù)定義文件;②用Connection對(duì)象連接數(shù)據(jù)庫(kù);③利用建立好的連接,通過(guò)Connection、Command對(duì)象執(zhí)行SQL命令,或利用Recordset對(duì)象取得結(jié)果記錄集進(jìn)行查詢(xún)、處
4、理;④使用完畢后關(guān)閉連接釋放對(duì)象。(3)引入ADO庫(kù)定義文件在VisualBasic程序中使用ADO對(duì)象,必須先為當(dāng)前工程引用ADO的對(duì)象庫(kù)。方法:執(zhí)行“工程”菜單中“引用”命令,彈出“引用”對(duì)話框,如圖所示。在勾選如圖所示的選項(xiàng)后,點(diǎn)擊“確定”按鈕即可完成引用。注意:不同環(huán)境下ADO的版本號(hào)可能不同。2.Connection對(duì)象Connection對(duì)象用于建立與數(shù)據(jù)庫(kù)的連接。(1)Connection對(duì)象的常用屬性①ConnectionString屬性在用Connection建立與數(shù)據(jù)庫(kù)的連接時(shí),需要設(shè)置ConnectionString屬性的值(即連
5、接字符串),以指定連接數(shù)據(jù)庫(kù)所用的驅(qū)動(dòng)程序、數(shù)據(jù)源名稱(chēng)、用戶(hù)名和密碼等。②Mode屬性,指定Connection對(duì)象修改數(shù)據(jù)的權(quán)限。③State屬性,返回Connection對(duì)象的狀態(tài)。(2)Connection對(duì)象的常用方法①Open方法,打開(kāi)到數(shù)據(jù)源的連接。語(yǔ)法如下:Connection對(duì)象.OpenConnectionString,UserID,PassWord,Options以下參數(shù)均為可選項(xiàng):ConnectionString:包含連接信息的字符串。UserID:包含建立連接時(shí)所使用的用戶(hù)名稱(chēng)。Password:字符串,包含建立連接時(shí)所用密碼。
6、Options:設(shè)置為adConnectAsync,則異步打開(kāi)連接;如果設(shè)置為ConnectComplete,當(dāng)連接可用時(shí)將調(diào)用該事件。②Close方法,關(guān)閉到數(shù)據(jù)源的連接。③Execute方法,在連接上執(zhí)行命令。④Cancel方法,取消Open或Execute方法的調(diào)用。【例】使用Connection對(duì)象連接到數(shù)據(jù)庫(kù)Scenic.accdb。PrivateSubForm_Load()DimconnAsNewADODB.Connection'創(chuàng)建Connection對(duì)象connconn.ConnectionString=“Provider=Micros
7、oft.ACE.OLEDB.12.0;DataSource=”+App.Path+“Sdudent.accdb”'連接數(shù)據(jù)庫(kù)路徑conn.Open'打開(kāi)到數(shù)據(jù)庫(kù)連接Ifconn.State=adStateOpenThenMsgBox“連接已打開(kāi)”'判斷連接狀態(tài)conn.Close'關(guān)閉數(shù)據(jù)庫(kù)連接Ifconn.State=adstatecolsedThenMsgBox“連接已關(guān)閉”EndSub其中,“Provider”用于指定連接的提供者(Microsoft.ACE.OLEDB.12.0可以訪問(wèn)Access2010數(shù)據(jù)庫(kù)),“DATASource”用于
8、指定數(shù)據(jù)庫(kù)的文件名(含絕對(duì)路徑)。App.Path返回當(dāng)前應(yīng)用程序所在的絕對(duì)路徑。3.Comm