摘要:摘要:NET平臺(tái)提供了全面、完整的數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)組件,ADO.NET就是在A(yíng)DO的基礎(chǔ)上發(fā)展而來(lái),全面支持以面向?qū)ο蟮男问絹?lái)訪(fǎng)問(wèn)和管理數(shù)據(jù)庫(kù)系統(tǒng),文中主要以信息管理系統(tǒng)研發(fā)為例,探討了
摘要:NET平臺(tái)提供了全面、完整的數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)組件,ADO.NET就是在A(yíng)DO的基礎(chǔ)上發(fā)展而來(lái),全面支持以面向?qū)ο蟮男问絹?lái)訪(fǎng)問(wèn)和管理數(shù)據(jù)庫(kù)系統(tǒng),文中主要以信息管理系統(tǒng)研發(fā)為例,探討了.NET開(kāi)發(fā)平臺(tái)下的數(shù)據(jù)庫(kù)技術(shù)以及ADO.NET技術(shù)訪(fǎng)問(wèn)和存取數(shù)據(jù)庫(kù)的模式。ADO.NET組件實(shí)現(xiàn)了一種全新的數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)、存取機(jī)制。
關(guān)鍵詞:NET框架;ADO.NET;組件;數(shù)據(jù)庫(kù)訪(fǎng)問(wèn);信息管理系統(tǒng)
1、引言
ADO.NET是.NET開(kāi)發(fā)平臺(tái)下的一種全新的數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)組件,和ADO相比,ADO.NET主要有三個(gè)方面的新特性:實(shí)現(xiàn)了和XML技術(shù)的集成,可以適應(yīng)WEB環(huán)境下的數(shù)據(jù)訪(fǎng)問(wèn)需求;ADO.NET打破了ADO的類(lèi)型轉(zhuǎn)換機(jī)制,簡(jiǎn)化操作;ADO.NET在應(yīng)用性能上更加優(yōu)越,有效提高應(yīng)用程序的可伸縮性。目前,.NET開(kāi)發(fā)平臺(tái)因其多方面的優(yōu)越性而在行業(yè)信息管理系統(tǒng)中得到廣泛的應(yīng)用,尤其在WEB系統(tǒng)領(lǐng)域具有相當(dāng)?shù)挠绊懥Α?/p>

2、數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)組件
2.1ADO.NET
ADO.NET技術(shù)主要包含一組用于與數(shù)據(jù)源進(jìn)行通信交互的實(shí)現(xiàn)數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)的面向?qū)ο蟮念?lèi)庫(kù)集合。而大部分情況下,數(shù)據(jù)源都是指數(shù)據(jù)庫(kù),然而它也可以是文本類(lèi)型的文件、辦公軟件的格式比如Excel表格,還可以是XML文件。ADO.NET技術(shù)可以實(shí)現(xiàn)不同類(lèi)型的數(shù)據(jù)源集合進(jìn)行數(shù)據(jù)庫(kù)系統(tǒng)的通信交互。這主要是由于不同的數(shù)據(jù)源所需要用到通信協(xié)議不同,那么也就需要所以對(duì)于不同的數(shù)據(jù)源必須采用相應(yīng)的協(xié)議。而對(duì)于一些比較陳舊的數(shù)據(jù)源大部分使用ODBC數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)協(xié)議,而對(duì)于很多新的數(shù)據(jù)源則使用OLEDB數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)協(xié)議,同時(shí)還在不斷地發(fā)展和推出更多的數(shù)據(jù)源訪(fǎng)問(wèn)協(xié)議。
2.2ADO.NET結(jié)構(gòu)
在.NET組件中,ADO.NET類(lèi)庫(kù)集合可以輕松的實(shí)現(xiàn)數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)及處理。ADO.NET類(lèi)庫(kù)提供了和數(shù)據(jù)源進(jìn)行通信交互的有關(guān)的公共訪(fǎng)問(wèn)方法,而針對(duì)不同的數(shù)據(jù)源則使用一組不同的對(duì)象類(lèi)庫(kù)。通常這些類(lèi)庫(kù)稱(chēng)之為DataProviders數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)提供者,同時(shí)對(duì)于A(yíng)DO.NET的組件對(duì)象來(lái)說(shuō)通常是按照與之通信交互的協(xié)議及其數(shù)據(jù)源的類(lèi)型進(jìn)行命名的。ADO.NET主要包括Connection對(duì)象、Command對(duì)象、DataReader對(duì)象、DataSet對(duì)象、DataAdapter對(duì)象。
3、基于.NET的信息管理系統(tǒng)(MIS)
文中以教學(xué)管理系統(tǒng)為例,介紹.NET平臺(tái)下的MIS系統(tǒng)的設(shè)計(jì)和開(kāi)發(fā)思路,包括系統(tǒng)功能設(shè)計(jì)、數(shù)據(jù)庫(kù)設(shè)計(jì)、數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)組件設(shè)計(jì)等過(guò)程。
3.1系統(tǒng)分析與設(shè)計(jì)
(1)需求分析:設(shè)計(jì)和開(kāi)發(fā)教學(xué)信息管理系統(tǒng),其主要目標(biāo)是充分利用現(xiàn)有的網(wǎng)絡(luò)資源、多媒體技術(shù)、信息管理技術(shù)、數(shù)據(jù)庫(kù)系統(tǒng)技術(shù)等技術(shù)資源實(shí)現(xiàn)教學(xué)信息資源共享,加強(qiáng)師生之間的交流互動(dòng),通過(guò)對(duì)教學(xué)資源、教學(xué)過(guò)程進(jìn)行信息化管理,完善并豐富教學(xué)過(guò)程和內(nèi)容,為教師提供統(tǒng)一的、良好的教學(xué)平臺(tái),可以有效提高教學(xué)質(zhì)量,實(shí)現(xiàn)教學(xué)資源信息的合理配置和利用。(2)系統(tǒng)設(shè)計(jì):根據(jù)系統(tǒng)的需求分析和業(yè)務(wù)流程分析,并結(jié)合結(jié)構(gòu)化的程序設(shè)計(jì)思想,我們?cè)O(shè)計(jì)了系統(tǒng)的軟件結(jié)構(gòu),每一個(gè)模塊完成一個(gè)適當(dāng)?shù)淖庸δ埽涯K組織成良好的層次系統(tǒng),頂層模塊調(diào)用它的下層模塊、各模塊相互配合以實(shí)現(xiàn)程序的完整功能。教學(xué)信息管理系統(tǒng)主要包括幾個(gè)方面的功能:在線(xiàn)學(xué)習(xí)模塊、作業(yè)管理模塊、教學(xué)資源上傳/下載模塊、學(xué)生考核管理模塊、系統(tǒng)管理模塊、在線(xiàn)互動(dòng)模塊、論壇模塊等。
3.2系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)
本次開(kāi)發(fā)的教學(xué)平臺(tái)具有動(dòng)態(tài)導(dǎo)航的功能,該功能是通過(guò)VisualStudio2012軟件中的控件TreeView來(lái)實(shí)現(xiàn)的,利用TreeView控件能夠很好地完成節(jié)點(diǎn)的各種設(shè)置。通過(guò)對(duì)樹(shù)形結(jié)構(gòu)的遞歸方式來(lái)調(diào)用各種節(jié)點(diǎn)的信息,并通過(guò)數(shù)據(jù)庫(kù)將這些信息以動(dòng)態(tài)樹(shù)形菜單來(lái)體現(xiàn),用戶(hù)可以逐層打開(kāi)這種動(dòng)態(tài)樹(shù)形的菜單,然后就可以看到頁(yè)面右面顯示出來(lái)的隱藏信息。
數(shù)據(jù)庫(kù)是一種存儲(chǔ)數(shù)據(jù)并對(duì)數(shù)據(jù)進(jìn)行操作的工具。數(shù)據(jù)庫(kù)的作用在于組織和表達(dá)信息,簡(jiǎn)而言之,數(shù)據(jù)庫(kù)就是信息的集合。數(shù)據(jù)庫(kù)設(shè)計(jì)的目標(biāo)就是在給定的DBMS數(shù)據(jù)庫(kù)系統(tǒng)、操作系統(tǒng)和相關(guān)軟硬件環(huán)境下,如何將用戶(hù)的需求,設(shè)計(jì)并將其轉(zhuǎn)換為有效的數(shù)據(jù)庫(kù)和表結(jié)構(gòu),成為很好的可靠的數(shù)據(jù)庫(kù)模式。以教學(xué)信息管理系統(tǒng)為例,對(duì)教學(xué)信息管理系統(tǒng)的業(yè)務(wù)和數(shù)據(jù)流程走向的分析,我們?cè)O(shè)計(jì)、提煉出了如下的數(shù)據(jù)流要素。如下所示:(1)教學(xué)資源描述表:資源ID、所屬課程ID、章節(jié)ID、資源類(lèi)型、文件名、文件全路徑。(2)授課信息表:授課ID、教師ID、授課時(shí)間、課程ID、時(shí)間。(3)學(xué)生信息表:學(xué)生ID、學(xué)生姓名、專(zhuān)業(yè)、性別、電話(huà)、家庭住址。(4)教師信息表:教師ID、教師姓名、年齡、性別、所在班級(jí)。(5)提問(wèn)信息表:提問(wèn)ID、主題、內(nèi)容、時(shí)間、學(xué)生編號(hào)。(6)答疑信息表:提問(wèn)ID、教師ID、時(shí)間、回復(fù)內(nèi)容。
3.3.NET數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)組件設(shè)計(jì)
以教學(xué)信息管理系統(tǒng)中的學(xué)生提問(wèn)信息查詢(xún)?yōu)槔瑏?lái)介紹并說(shuō)明ADO.NET組件的使用,程序中使用了DataSet、DataAdapter、DataView等組件。以VisualStudio2005為實(shí)現(xiàn)平臺(tái),C#為開(kāi)發(fā)語(yǔ)言。學(xué)生提問(wèn)信息查詢(xún)功能:輸入待查找的條件來(lái)查找合適的信息,查詢(xún)條件包括:按學(xué)生ID、提問(wèn)時(shí)間、提問(wèn)主題、課程ID等。
(1)數(shù)據(jù)庫(kù)連接程序
SqlConnectionconn=newSqlConnection();
Conn.ConnectionString=”server=.;uid=sa;pwd=sa;database=jxxt”;
Conn.Open();
(2)學(xué)生提問(wèn)信息查詢(xún)程序
Stringkind=DropDownKind.SelectedItem.Text;
Stringsql=”select*fromtwxxwhere”+kind+”like”+”’%”+txt+”%’””;
DataSetds=newDataSet();
DataAdapterda=newDataAdapter(sql,conn);
Da.Fill(ds,”twxx”);
4、結(jié)語(yǔ)
在.NET平臺(tái)下,ADO.NET組件集合了非常豐富的數(shù)據(jù)庫(kù)處理類(lèi),是目前.NET平臺(tái)下研發(fā)信息管理系統(tǒng)的基本數(shù)據(jù)訪(fǎng)問(wèn)模型。它的優(yōu)越性必將得到廣泛的應(yīng)用和發(fā)展,Linq就是從ADO.NET發(fā)展而來(lái)的。
參考文獻(xiàn)
[1]劉昕.基于A(yíng)DO.NET對(duì)象的數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)[J].新課程學(xué)習(xí)(下).2011(06).
[2]王斌.一種基于A(yíng)SP.NET的數(shù)據(jù)備份方法[J].現(xiàn)代計(jì)算機(jī)(專(zhuān)業(yè)版).2010(01).
作者鄧楚楚
推薦閱讀:什么數(shù)據(jù)庫(kù)檢索的論文能評(píng)職稱(chēng)