下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、ADO訪問技術(shù)在科教研管理系統(tǒng)中的應(yīng)用 摘 要 本文介紹了ADO對(duì)象模型,闡述了在解決復(fù)雜問題時(shí)ADO訪問技術(shù)的重要性,并描述了ADO技術(shù)在科教研管理系統(tǒng)中的實(shí)際應(yīng)用。 關(guān)鍵字 ADO 對(duì)象、模型;科教研管理;結(jié)果集 1 引言 ADO是基于Microsoft 面向?qū)ο蟮臄?shù)據(jù)庫(kù)訪問新技術(shù),其訪問數(shù)據(jù)模型如圖1所示,并且其是基于COM的且具有COM 組件的諸多
2、優(yōu)點(diǎn),如跨語(yǔ)言(VC+、VB、VBScript Edition、Java可同時(shí)支持并使用)、跨平臺(tái)、跨操作系統(tǒng)等特點(diǎn),能夠訪問包括關(guān)系數(shù)據(jù)庫(kù)、非關(guān)系數(shù)據(jù)庫(kù)及所有的文件系統(tǒng)。與其它數(shù)據(jù)訪問對(duì)象(例如RDO 和DAO)相比,ADO 對(duì)象模型含有的對(duì)象更少,更易于使用。 科學(xué)研究和教學(xué)研究是高等學(xué)校的重要工作之一,隨著科教研項(xiàng)目涉及到的范圍也越來(lái)越廣,數(shù)量越來(lái)越多,管理也越來(lái)越復(fù)雜,通過(guò)計(jì)算機(jī)進(jìn)行管理無(wú)疑是最科學(xué)和最有效的方法,一方面可提高工作效率和工作質(zhì)量,同時(shí)又便于部門之間進(jìn)行信息交流,實(shí)現(xiàn)資源共享。而且目前我院 (北京聯(lián)合大學(xué)生物化學(xué)工程學(xué)院)的科教研管理還
3、是采用Excel來(lái)進(jìn)行管理,所以科教研管理系統(tǒng)的開發(fā)迫在眉睫。教科研管理系統(tǒng)是我院的校園辦公自動(dòng)化系統(tǒng)中的一個(gè)子系統(tǒng),主要利用Visual Base作為開發(fā)平臺(tái),SQL Server作為后臺(tái)數(shù)據(jù)庫(kù)研制開發(fā)的系統(tǒng),應(yīng)用ADO實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的訪問。 2 ADO對(duì)象模型 ADO是Microsoft 有關(guān)高級(jí)數(shù)據(jù)接口的策略,提供了一個(gè)開放的、應(yīng)用程序級(jí)的數(shù)據(jù)訪問對(duì)象模型,該模型提供了一組易于使用的對(duì)象、屬性、方法,用于創(chuàng)建可訪問和操作數(shù)據(jù)的應(yīng)用程序。 ADO 對(duì)象模型含有7 種對(duì):Connecti
4、on對(duì)象;Command對(duì)象;Recordset對(duì)象;Field 對(duì)象;Parameter 對(duì)象;Error 對(duì)象;Property 對(duì)象。每個(gè)ADO 對(duì)象都含有一組屬性和方法,允許對(duì)對(duì)象和其內(nèi)容進(jìn)行操作。程序設(shè)計(jì)中對(duì)ADO操作時(shí),主要利用以下3 個(gè)對(duì)象。 (1)Connection 對(duì)象 該對(duì)象建立一個(gè)和數(shù)據(jù)源的連接,它允許應(yīng)用程序傳遞客戶消息以創(chuàng)建連接。創(chuàng)建連接后,其它對(duì)象就可使用Connection對(duì)象。Connection 對(duì)象所需的數(shù)據(jù)源設(shè)置通過(guò)其ConnectString屬性設(shè)置。這個(gè)字符串可以是ODBC DS
5、N、URL 或數(shù)據(jù)連接信息,如數(shù)據(jù)提供者、服務(wù)器名、用戶名、口令等。指定連接后,用Open方法建立連接。 (2)Command 對(duì)象 Command 對(duì)象定義在數(shù)據(jù)庫(kù)連接中檢索到的數(shù)據(jù)的指定詳細(xì)信息。該對(duì)象可打開一個(gè)新連接或使用一個(gè)已有的連接。它通常以數(shù)據(jù)庫(kù)對(duì)象為基礎(chǔ)或以SQL查詢語(yǔ)言為基礎(chǔ)。要使用Command 對(duì)象,首先要指定CommandText屬性和CommandType 屬性,然后用Excute方法運(yùn)行指定的命令。Parameter 集合與Command 對(duì)象相關(guān)聯(lián),可管理存儲(chǔ)過(guò)程變?cè)?#160; &
6、#160; Recordset 對(duì)象 Recordset 對(duì)象代表數(shù)據(jù)庫(kù)表格中的一整套記錄或執(zhí)行一條命令而得到的結(jié)果。用該對(duì)象還提供客戶機(jī)應(yīng)用程序中讀取、更新和操縱數(shù)據(jù)的機(jī)制。打開該對(duì)象有下面3 種方式:使用現(xiàn)有打開的Connection 對(duì)象;使用現(xiàn)有打開的Command對(duì)象;直接傳遞連接字符串(指定ActiveConnection和Source屬性)。Recordset 對(duì)象是由記錄和字段組成。圖1 ADO訪問數(shù)據(jù)模型 圖2 ADO對(duì)象模型3 在科教研管理中的應(yīng)用
7、0; 目前利用面向?qū)ο蠹夹g(shù),通過(guò)ADO對(duì)象實(shí)例化編程是實(shí)現(xiàn)ADO數(shù)據(jù)訪問高級(jí)編程中的一個(gè)最實(shí)用的方法。該方法主要是通過(guò)類的編程、類對(duì)象的創(chuàng)建、方法的調(diào)用來(lái)實(shí)現(xiàn)遠(yuǎn)程數(shù)據(jù)訪問的。通常在解決復(fù)雜的應(yīng)用問題時(shí),采用ADO訪問技術(shù)將對(duì)解決問題起到至關(guān)重要的作用。在科教研管理系統(tǒng)中,在服務(wù)器端的SQL Server 數(shù)據(jù)庫(kù)為jyky,因?yàn)樵谡麄€(gè)系統(tǒng)中要多次利用ADO對(duì)象訪問數(shù)據(jù)庫(kù),所以把代碼中有關(guān)數(shù)據(jù)庫(kù)的連接做成一個(gè)模塊,方便在程序設(shè)計(jì)中重復(fù)調(diào)用,對(duì)數(shù)據(jù)的操作(錄入、添加、刪除、查詢)以科研項(xiàng)目中的橫向課題為例,做一簡(jiǎn)單的設(shè)計(jì)。具體應(yīng)用如下: (
8、1)數(shù)據(jù)庫(kù)的連接Public Function connectString() As String'數(shù)據(jù)庫(kù)連接 connectString = "dsn=kyjy;uid=sa;pwd=goodwish;Data Source =kyjy" End FunctionPublic Function ExecuteSQL(ByVal sql As String, MsgString As String) As ADODB.Recordset '執(zhí)行SQL語(yǔ)句并且返回記錄集 Dim
9、CNn As ADODB.Connection Dim mrc As ADODB.RecordsetOn Error GoTo ExecuteSQL_Error Set cnn = New ADODB.Connection: cnn.Open connectString Set mrc= New ADODB.Recordset: Mrc.Open cnn, adOpenKeyset, adLockOptimistic &
10、#160; mrc.MoveLast : Set ExecuteSQL = mrcExecuteSQL_Exit: Set mrc = Nothing : Set cnn = Nothing: Exit FunctionExecuteSQL_Error: Resume ExecuteSQL_ExitEnd Function (2)數(shù)據(jù)的錄入,以橫向課題為例 txtsql = "select * from h
11、x ": Set mrc = ExecuteSQL(txtsql, MsgText) If mrc.State = adStateClosed Then mrc.Open mrc.AddNew mrc.Fields("hxkth") = Trim(TextKtbh):mrc.Fields("ktmc") = Trim(TextKtmc.Text) mrc.Fields("ktzt")
12、 = Trim(ComboKtzt.Text): mrc.Fields("ktxz") = Trim (ComboKtxz.Text) mrc.Fields("xmlb") = Val(Trim(Comboxmlb.Text) mrc.Fields("jfze") = Val(Trim(TextJfze.Text) mrc.Fields("dyq") = Trim(TextDyq.T
13、ext): mrc.Fields("deq") = countjingfei mrc.Fields("lxsj") = mydate: mrc.Fields("pzsj") = mydate1 mrc.Fields("wcsj") = mydate2: mrc.Fields("zys") = CountZys mrc.Fields("zyly") = Trim(Txt
14、zyly.Text) : mrc.Fields("cc") = Trim(Combocc.Text) mrc.Fields("ktzl") = Trim(ComboKtzl.Text): mrc.Fields("xmly") = Trim(Textxmly.Text) mrc.Fields("bz") = Trim(Txtbz.Text) mrc.Update執(zhí)行插入語(yǔ)句
15、(3)數(shù)據(jù)修改 txtsql = "update hx set Jfze='" & Val(Trim(TextJfze) & "', dyq = '" & Val(Trim(TextDyq.Text) txtsql = txtsql & "', deq ='" & countjingfei txtsql = txtsql & "
16、39;, xmlb ='" & Trim(Comboxmlb.Text) txtsql = txtsql & "', ktzt ='" & Trim(Comboktzt.Text) txtsql = txtsql & "', ktxz ='" & Trim(Comboktxz.Text) txtsql = txtsql & "', k
17、tmc ='" & Trim(TextKtmc.Text) txtsql = txtsql & "', zyly ='" & Trim(Txtzyly.Text) txtsql = txtsql & "', xmly='" & Trim(Textxmly.Text) If Trim(Txtbz.Text) <> "" Then
18、txtsql = txtsql & "', bz ='" & Trim(Txtbz.Text) txtsql = txtsql & "', cc ='" & Trim(Combocc.Text) txtsql = txtsql & "', lxsj ='" & mydate:txtsql = txtsql & "', pzsj ='&q
19、uot; & mydate1 txtsql = txtsql & "', wcsj ='" & mydate2:txtsql = txtsql & "',zys ='" & CountZys txtsql = txtsql & "',ktzl ='" & Trim(Comboktzl.Text) txtsql = txtsql
20、 & "' where hxkth ='" & Trim(TextKtbh.Text) & " ' " Set mrc = ExecuteSQL(txtsql, MsgText) 執(zhí)行修改語(yǔ)句 (4)數(shù)據(jù)刪除 txtsql = "delete from hx where hxkth='" & Trim(TextKtbh.Text) & "' " Set mrc = ExecuteSQL(txtsql, MsgTex
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024材料供應(yīng)合同模板
- 2024年度咨詢服務(wù)合同標(biāo)的:企業(yè)管理咨詢
- 2024年度城市軌道交通設(shè)備銷售合同
- 2024年度企業(yè)廣告發(fā)布合同具體條款
- 2024年品牌經(jīng)理合作協(xié)議
- 2024年雙層隔音門窗制作安裝合同
- 2024年城市供水供電設(shè)施建設(shè)與運(yùn)營(yíng)合同
- 2024年度垃圾清運(yùn)服務(wù)合同
- 2024年度智能工廠設(shè)計(jì)與建造合同
- 2024年度八寶山殯儀館鮮花制品供應(yīng)商資質(zhì)審核與評(píng)估合同
- 工匠精神之資產(chǎn)負(fù)債表重構(gòu)
- 300萬(wàn)噸鋼鐵工程項(xiàng)目可行性研究報(bào)告書
- 非金屬膨脹節(jié)采購(gòu)技術(shù)協(xié)議(茶園)
- 場(chǎng)地平整工程施工方案(完整版)
- 婦產(chǎn)科診療常規(guī)
- 《風(fēng)景園林工程》word版
- 實(shí)驗(yàn)室生物安全委員會(huì)及其工作職責(zé)
- JJF(鄂) 90-2021 電子輥道秤校準(zhǔn)規(guī)范(高清版)
- ISO-IEC17025-2017實(shí)驗(yàn)室管理體系全套程序文件
- 上好一節(jié)消防課(課堂PPT)
- 鈑金成品類檢驗(yàn)標(biāo)準(zhǔn)作業(yè)指導(dǎo)書
評(píng)論
0/150
提交評(píng)論