国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

ADO.NET中數(shù)據(jù)訪問方式的探討

2017-03-27 21:06:30林佳一
電腦知識(shí)與技術(shù) 2017年3期

林佳一

摘要:在.NET的數(shù)據(jù)庫(kù)應(yīng)用程序開發(fā)中,如何選擇合適的數(shù)據(jù)訪問方式成為關(guān)鍵問題。首先介紹了.NET技術(shù)和ADO.NET的兩種數(shù)據(jù)訪問方式,然后從資源利用率、執(zhí)行方式和使用場(chǎng)景三個(gè)方面,詳細(xì)探討了兩種訪問方式下對(duì)系統(tǒng)的性能消耗以及執(zhí)行效率的影響,最后通過一個(gè)的具體實(shí)例對(duì)兩種訪問方法的應(yīng)用效果進(jìn)行比較,并給出了合理選擇數(shù)據(jù)訪問方式的建議,這對(duì)開發(fā)數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)具有實(shí)際參考意義。

關(guān)鍵詞:ADO.NET; 連接方式的數(shù)據(jù)訪問; 斷開方式的數(shù)據(jù)訪問;DataReader;DataSet

中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2017)03-0013-03

A Discussion on Data Access Mode in ADO.NET

LIN Jia-yi

(Guangdong Communication Polytechnic,Guangzhou 510650,China)

Abstract: In development of .NET database application, how to choose the right data access mode becomes the key problem. This paper firstly introduces.NET technology and two kinds of ADO.NET data access, and then from the three aspects of resource utilization, implementation and usage scenarios, the impact on the performance of system and the execution efficiency in two kinds of access mode is discussed in detail, compared the application effect of a specific example of two access methods, and finally gives a reasonable choice of data access proposal, which has practical reference significance to the development of database application system.

Key words: ADO.NET; connected data access;disconnected data access; DataReader;DataSet

隨著互聯(lián)網(wǎng)+時(shí)代的到來,各行各業(yè)正經(jīng)歷著前所未有的管理模式的改變。無論單位規(guī)模大小,數(shù)據(jù)的存儲(chǔ)、查詢、統(tǒng)計(jì)和修改等操作是單位的日常工作中一個(gè)重要部分。為了滿足目前網(wǎng)絡(luò)環(huán)境下提出的對(duì)海量數(shù)據(jù)處理的新任務(wù),開發(fā)應(yīng)用系統(tǒng)時(shí),軟件開發(fā)者始終需要將如何加快數(shù)據(jù)處理的速度和提高數(shù)據(jù)的利用率放在首要位置。

數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的開發(fā)作為軟件開發(fā)的一個(gè)主要的分支,已經(jīng)廣泛應(yīng)用到社會(huì)各個(gè)領(lǐng)域。大型的數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)一般采用C/S或B/S架構(gòu)[1],當(dāng)前兩大主流開發(fā)語言系JAVA和.NET都可以在這兩種架構(gòu)上開發(fā)系統(tǒng)。.NET作為微軟推出的面向Internet的新一代應(yīng)用程序平臺(tái),其中涉及數(shù)據(jù)庫(kù)訪問的最關(guān)鍵技術(shù)是ADO.NET。比起以前的數(shù)據(jù)庫(kù)訪問技術(shù),ADO.NET在實(shí)現(xiàn)程序之間的數(shù)據(jù)共享上具有優(yōu)越性,它提供了連接和斷開兩種數(shù)據(jù)訪問方式。對(duì)于這兩種方式,以往文獻(xiàn)中過多側(cè)重于討論訪問過程,本文則從不同的角度,分析了ADO.NET的兩種訪問方式的操作執(zhí)行,具體探討了兩者在查詢、增加、刪除、修改以及執(zhí)行存儲(chǔ)過程時(shí)的差異,并在實(shí)際中分別用兩種不同的訪問方式來實(shí)現(xiàn)系統(tǒng),通過比較來總結(jié)出一些經(jīng)驗(yàn),這些對(duì)我們?cè)陂_發(fā)過程中如何選擇數(shù)據(jù)訪問方式提供了一些參考借鑒。

1 相關(guān)技術(shù)

1.1 NET技術(shù)和ADO.NET

1.1.1 NET技術(shù)

隨著互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,需要開發(fā)出大量支持跨平臺(tái)和多種架構(gòu)的應(yīng)用程序。而原有的開發(fā)平臺(tái)已不能適應(yīng)這種新變化。為了快速開發(fā)兼容性更好的大型應(yīng)用程序,1998年12月,微軟公司提出了.NET的新戰(zhàn)略。微軟對(duì).NET的定義為:.NET是Microsoft面向XML Web服務(wù)的平臺(tái),它使用一種統(tǒng)一的、個(gè)性化的方式將信息、設(shè)備和人員緊密地聯(lián)系在一起[2]。經(jīng)過近二十年的發(fā)展,.NET已經(jīng)成為當(dāng)前主流的企業(yè)級(jí)應(yīng)用開發(fā)平臺(tái)。

.NET平臺(tái)的核心是NET Framework??梢詮膬蓚€(gè)角度來解讀它,一方面.NET Framework是一個(gè)基礎(chǔ)工具,用于構(gòu)建基于互聯(lián)網(wǎng)平臺(tái)的各種應(yīng)用程序;另一方面.NET Framework是一個(gè)豐富的類庫(kù),用于開發(fā)WinForm、Web、ADO.NET、GUI等各類應(yīng)用程序。

.NET Framework由兩個(gè)主要組件組成[3]:公共語言運(yùn)行庫(kù)(Common Language Runtime,CLR)用于代碼編譯和執(zhí)行的集成托管環(huán)境,.NET應(yīng)用程序并不直接和操作系統(tǒng)打交道,而是在CLR上執(zhí)行,受CLR的管理;.NET Framework 類庫(kù),這個(gè)類庫(kù)可以供不同的編程語言調(diào)用,諸如C#、VC++、VB.NET等,從而實(shí)現(xiàn)了跨語言編程。

1.1.2 ADO.NET

通常我們將數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)劃分為前臺(tái)和后臺(tái)兩個(gè)部分,前臺(tái)可以用C#、JAVA等多種高級(jí)語言實(shí)現(xiàn),后臺(tái)數(shù)據(jù)庫(kù)可以用多種數(shù)據(jù)庫(kù)管理系統(tǒng)來創(chuàng)建,常見的有SQL Server、Oracle、DB2和MySQL等。顯然,不同的語言訪問不同的數(shù)據(jù)庫(kù)時(shí),用到的也是不同具體的數(shù)據(jù)訪問方法。為了讓前臺(tái)程序方便訪問后臺(tái)數(shù)據(jù)庫(kù),有必要在它們之間建立一種數(shù)據(jù)訪問模型來統(tǒng)一操作數(shù)據(jù)庫(kù)的方式。至上世紀(jì)80年代以來,業(yè)界上相繼出現(xiàn)了ODBC、OLE DB、ADO、JDBC等各種數(shù)據(jù)訪問模型,而伴隨著.NET技術(shù)出現(xiàn),微軟推出了面向Internet版本的、能高效地連接和訪問數(shù)據(jù)庫(kù)的模型ADO.NET。

作為.NET Framework 的一個(gè)重要組件ADO.NET,ADO.NET實(shí)質(zhì)上是一個(gè)類庫(kù),它在很大程度上封裝了數(shù)據(jù)庫(kù)訪問和數(shù)據(jù)操作的動(dòng)作。ADO.NET主要包含五個(gè)非常重要的類,分別是Connection類、Command類、DataReader類、DataAdapter類和DataSet類。使用ADO.NET訪問數(shù)據(jù)庫(kù)主要有三大特點(diǎn)。一是跨平臺(tái)??梢栽L問多種關(guān)系型數(shù)據(jù)庫(kù),也可以是非關(guān)系型的數(shù)據(jù),比如Email或者XML數(shù)據(jù)。二是效率高。在斷開連接數(shù)據(jù)庫(kù)的方式下,應(yīng)用程序可以直接從臨時(shí)數(shù)據(jù)集DataSet中獲取數(shù)據(jù),大大提高數(shù)據(jù)訪問速度。三是安全性高??梢允褂脭?shù)據(jù)庫(kù)中的存儲(chǔ)過程和視圖,并結(jié)合權(quán)限提供安全保障。

1.2 ADO.NET中數(shù)據(jù)訪問方式

相比較ADO、JDBC等其他的數(shù)據(jù)庫(kù)訪問技術(shù),微軟的ADO.NET在數(shù)據(jù)庫(kù)訪問上處理得更為精細(xì)、過程更為復(fù)雜。ADO.NET完美融合了數(shù)據(jù)庫(kù)中表、存儲(chǔ)過程、視圖、事務(wù)等各方面的應(yīng)用,特別是對(duì)于同出一家SQL SERVER數(shù)據(jù)庫(kù)管理系統(tǒng)。隨著Internet發(fā)展,ADO.NET集成了XML,適應(yīng)了Web應(yīng)用程序的開發(fā)。面對(duì)各種不同數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)需求,ADO.NET提供了多樣性的數(shù)據(jù)處理方式。根據(jù)數(shù)據(jù)庫(kù)的使用狀態(tài),將ADO.NET劃分為兩種數(shù)據(jù)訪問方式[4],如圖1所示:

1)連接方式的數(shù)據(jù)訪問

首先應(yīng)用程序創(chuàng)建Connection對(duì)象,并設(shè)置好連接字符串后打開與數(shù)據(jù)庫(kù)的連接,然后通過創(chuàng)建Command對(duì)象向數(shù)據(jù)庫(kù)服務(wù)器發(fā)出執(zhí)行SQL命令的請(qǐng)求,數(shù)據(jù)庫(kù)服務(wù)器在執(zhí)行完命令后將結(jié)果返回給應(yīng)用程序。此時(shí)如果還需要執(zhí)行其他數(shù)據(jù)庫(kù)命令,就不用再次創(chuàng)建連接和打開連接,只需要用Command對(duì)象發(fā)出執(zhí)行SQL命令的請(qǐng)求即可。最后當(dāng)應(yīng)用程序不再需要訪問數(shù)據(jù)庫(kù)時(shí),才關(guān)閉數(shù)據(jù)庫(kù)的連接。

2)斷開方式的數(shù)據(jù)訪問

首先應(yīng)用程序創(chuàng)建Connection對(duì)象,并設(shè)置好連接字符串后打開與數(shù)據(jù)庫(kù)的連接,然后通過創(chuàng)建與Command對(duì)象相關(guān)聯(lián)的DataAdapter對(duì)象,通過DataAdapter對(duì)象的Fill方法將數(shù)據(jù)庫(kù)中需要的數(shù)據(jù)取出存放在本地的緩存DataSet中,此時(shí)自動(dòng)斷開與數(shù)據(jù)庫(kù)的連接,隨后應(yīng)用程序直接對(duì)DataSet進(jìn)行相關(guān)數(shù)據(jù)操作,除非需要重新從數(shù)據(jù)庫(kù)中取出數(shù)據(jù)或?qū)ataSet中的數(shù)據(jù)更新至數(shù)據(jù)庫(kù)時(shí),才會(huì)連接數(shù)據(jù)庫(kù)。

這兩種數(shù)據(jù)訪問方式大量應(yīng)用在ADO.NET系統(tǒng)的開發(fā)中,但是在具體實(shí)現(xiàn)中又有多種途徑,總結(jié)為三種方法。第一種是使用ADO.NET控件,Visual Studio的工具箱中提供了各種ADO.NET控件,通過一次性拖放控件來實(shí)現(xiàn)與后臺(tái)數(shù)據(jù)庫(kù)的綁定,并可以在前臺(tái)的顯示控件中操作數(shù)據(jù)。這是最簡(jiǎn)單快捷編程方式;第二種是使用ADO.NET對(duì)象,在程序中使用ADO.NET對(duì)象提供的各種方法完成數(shù)據(jù)庫(kù)操作。雖然這種方法需要更多編寫代碼,但是給編程者有更多拓展空間,編寫出滿足個(gè)性化需求的功能;第三種是混合使用控件和對(duì)象,兼顧兩者優(yōu)缺點(diǎn),可以精簡(jiǎn)部分代碼。

圖1 數(shù)據(jù)訪問方式

2 兩種訪問方式的比較分析

2.1資源利用率

連接方式的數(shù)據(jù)訪問要求在整個(gè)程序運(yùn)行過程中一直要和數(shù)據(jù)庫(kù)保持連接。雖然數(shù)據(jù)庫(kù)可以支持多用戶連接,然而連接的資源畢竟有限,如果讓一個(gè)數(shù)據(jù)庫(kù)長(zhǎng)時(shí)間連接并處于打開狀態(tài),將浪費(fèi)較多的系統(tǒng)資源,從而會(huì)限制應(yīng)用程序?qū)崿F(xiàn)更多功能。

斷開方式的數(shù)據(jù)訪問則是將應(yīng)用程序要經(jīng)常要用到的數(shù)據(jù)存放在本地的DataSet中,于是應(yīng)用程序可以直接到DataSet中提取數(shù)據(jù),就不再需要與數(shù)據(jù)庫(kù)保持連接了,這樣可以讓別的應(yīng)用程序有更多的機(jī)會(huì)使用數(shù)據(jù)庫(kù),提高資源使用效率。

2.2執(zhí)行方式

1)查詢操作

在數(shù)據(jù)庫(kù)中執(zhí)行頻率最高的是查詢操作。使用SELECT語句執(zhí)行完后會(huì)得到一個(gè)結(jié)果表,應(yīng)用程序通過連接和斷開兩種數(shù)據(jù)訪問方式獲取到結(jié)果表。

對(duì)于連接訪問方式,當(dāng)查詢到結(jié)果表只包含一個(gè)結(jié)果值,比如:執(zhí)行一些帶統(tǒng)計(jì)函數(shù)的SELECT語句,則執(zhí)行Command對(duì)象的ExecuteScalar方法,獲得的是一個(gè)Object類型值。將該值轉(zhuǎn)換成其他類型后可以直接在程序中使用;當(dāng)查詢的結(jié)果表包含一行或多行記錄時(shí),則使用DataReader對(duì)象,它類似于一個(gè)讀取數(shù)據(jù)的指針,指向服務(wù)器緩存中的結(jié)果表,讀取一行數(shù)據(jù)就處理一行,如果讀不到返回false。因此只需要一條數(shù)據(jù)記錄的內(nèi)存,內(nèi)存占用非常小,但只能讀取結(jié)果表中數(shù)據(jù)而不能對(duì)其修改,這種方式速度快。

對(duì)于斷開方式的數(shù)據(jù)訪問,無論查詢的結(jié)果集中有一個(gè)還是多行數(shù)據(jù),始終用DataSet存放??梢园袲ataSet看成是內(nèi)存中的一個(gè)臨時(shí)數(shù)據(jù)庫(kù),只要內(nèi)存夠大,可以在里面放一個(gè)表或多個(gè)表,甚至View都可以。但也有上限要求,DataSet可以容納不超過十幾萬條數(shù)據(jù)。由于DataSet在本地內(nèi)存中,里面的數(shù)據(jù)是從數(shù)據(jù)庫(kù)中篩選出來的,因此在查找DataSet中數(shù)據(jù)時(shí),耗時(shí)短,訪問效率高。

2)增加、刪除和修改操作

查詢操作不會(huì)造成數(shù)據(jù)庫(kù)中數(shù)據(jù)的改變,增加、刪除和修改操作會(huì)對(duì)數(shù)據(jù)庫(kù)產(chǎn)生實(shí)質(zhì)的影響。應(yīng)用程序在兩種數(shù)據(jù)訪問方式下更改數(shù)據(jù)庫(kù)的具體實(shí)現(xiàn)方式截然不同。

連接訪問方式下,通過Command對(duì)象的ExecuteNonquery方法執(zhí)行Insert、Delete和Update這些SQL語句。應(yīng)用程序可以獲得執(zhí)行完SQL命令后數(shù)據(jù)庫(kù)受影響的行數(shù),這往往是判斷數(shù)據(jù)庫(kù)是否修改成功的依據(jù)。該方式對(duì)執(zhí)行SQL語句的表沒有太多要求,單表或多表都可以。同時(shí)整個(gè)執(zhí)行過程簡(jiǎn)單,一句代碼直接即可完成數(shù)據(jù)庫(kù)的更新。

斷開訪問方式下,應(yīng)用程序不能直接修改數(shù)據(jù)庫(kù),只能修改DataSet。如何讓DataSet修改后的數(shù)據(jù)同時(shí)反映到數(shù)據(jù)庫(kù)中,此時(shí),DataAdapter對(duì)象在DataSet和數(shù)據(jù)庫(kù)之間架起了一座溝通的橋梁。執(zhí)行DataAdapter對(duì)象的Update方法,會(huì)重新連接數(shù)據(jù)庫(kù),使Dataset與數(shù)據(jù)庫(kù)實(shí)現(xiàn)同步更新。當(dāng)更新數(shù)據(jù)庫(kù)完成后,自動(dòng)關(guān)閉連接。這種更新數(shù)據(jù)庫(kù)的方式在應(yīng)用時(shí)有一定條件限制,首先要求必須是針對(duì)單個(gè)表的操作;其次必須要求操作的表必須定義好主鍵;最后還要使用SqlCommandBuilder對(duì)象來自動(dòng)產(chǎn)生與DataAdapter相關(guān)的修改命令對(duì)象Command。該方式具有較大的局限性,代碼中涉及對(duì)象多,編寫相對(duì)復(fù)雜,因此只是作為一個(gè)補(bǔ)充選擇方案,實(shí)際中應(yīng)用較少。

3)執(zhí)行存儲(chǔ)過程

將一段SQL操作命令設(shè)計(jì)成存儲(chǔ)過程執(zhí)行,有利于提高系統(tǒng)安全性,同時(shí)減少網(wǎng)絡(luò)流通量。連接訪問方式下執(zhí)行存儲(chǔ)過程首先需要設(shè)置Command的CommandType屬性,然后將存儲(chǔ)過程名賦給CommandText屬性,最后根據(jù)存儲(chǔ)過程返回值的類型選擇相應(yīng)的執(zhí)行方法。整個(gè)執(zhí)行過程簡(jiǎn)單,易于編程。斷開訪問方式下,可以通過設(shè)置DataAdapter的SelectCommand屬性和調(diào)用Fill方法來完成,但是并不是所有的存儲(chǔ)過程都可以正常執(zhí)行,如果存儲(chǔ)過程中有修改語句或沒有返回值,代碼會(huì)出問題。只能用于執(zhí)行特定的存儲(chǔ)過程。

2.3適用場(chǎng)景

面對(duì)多種訪問數(shù)據(jù)庫(kù)的方式,在不同的應(yīng)用中選取合適的數(shù)據(jù)訪問方法顯得尤為重要,這直接影響決定著系統(tǒng)運(yùn)行的效率。一般來講,連接訪問方式比較適合以下的一些場(chǎng)景。場(chǎng)景一:系統(tǒng)部署在一個(gè)局域網(wǎng)環(huán)境中并采用C/S架構(gòu),如果存在大量的查詢數(shù)據(jù)庫(kù)操作,不需要修改查詢結(jié)果,DataReader是最好的選擇。場(chǎng)景二:系統(tǒng)要求及時(shí)反映數(shù)據(jù)的變化,比如環(huán)境、交通監(jiān)控系統(tǒng),連接訪問這種方式速度快,適用于實(shí)時(shí)要求高的系統(tǒng)。斷開訪問方式在下列場(chǎng)景中發(fā)揮更好的作用。場(chǎng)景一:系統(tǒng)有大量的用戶使用,如果用斷開方式,那么只有在更新數(shù)據(jù)庫(kù)時(shí)才會(huì)連接數(shù)據(jù)庫(kù),提高資源利用率。場(chǎng)景二:系統(tǒng)部署B(yǎng)/S的環(huán)境中,比如網(wǎng)上辦公,電子商務(wù)系統(tǒng)。這樣先把數(shù)據(jù)庫(kù)中所有數(shù)據(jù)都放到內(nèi)存,然后都在本地機(jī)器中操作。選擇用哪種方式也不是絕對(duì)的,要根據(jù)實(shí)際場(chǎng)景將兩種方式結(jié)合起來,更好發(fā)揮各自優(yōu)勢(shì)。

3 基于兩種訪問方式下的應(yīng)用實(shí)例

圖2 運(yùn)動(dòng)員信息管理界面

以下實(shí)例基于C/S架構(gòu)的學(xué)校運(yùn)動(dòng)會(huì)管理系統(tǒng),開發(fā)中前臺(tái)采用了Visual Studio2012,后臺(tái)使用SQL Server2012。選取了其中一個(gè)運(yùn)動(dòng)員信息管理的編輯界面,如圖2所示,分別用兩種不同的數(shù)據(jù)庫(kù)訪問方式實(shí)現(xiàn)了查詢、增加、刪除和修改運(yùn)動(dòng)員信息的功能。下面列出了主要步驟代碼。

3.1采用連接方式的數(shù)據(jù)訪問

if (type == 1) //添加

{

s = string.Format("insert into athlete values('{0}','{1}','{2}','{3}','{4}','{5}')", txtID.Text.Trim(), txtName.Text.Trim(), cbGender.Text.Trim(), Convert.ToDateTime(txtBirth.Text.Trim()), txtPlaceOfOrigin.Text.Trim(), txtMemo.Text);

}

if (type == 2) //修改

{ … }

if (type == 3) //刪除

{ … }

conn = new SqlConnection();

conn.ConnectionString = ConfigurationManager.ConnectionStrings["AthConn"].ConnectionString;

conn.Open();

SqlCommandcmd = new SqlCommand(s,conn);

cmd.ExecuteNonQuery();

3.2采用斷開方式的數(shù)據(jù)訪問

if (type == 1) //添加

{

dr = dt.NewRow();

dr["a_athleteid"] = txtID.Text.Trim();

dr["a_name"] = txtName.Text.Trim();

dr["a_sex"] = cbGender.Text.Trim();

dr["a_birth"] = Convert.ToDateTime(txtBirth.Text.Trim());

dr["a_address"] = txtPlaceOfOrigin.Text.Trim();

dr["a_memo"] = txtMemo.Text;

dt.Rows.Add(dr);

SqlCommandBuildersqlBuild = new SqlCommandBuilder(da);

da.InsertCommand = sqlBuild.GetInsertCommand();

}

if (type == 2) //修改

{ … }

if (type == 3) //刪除

{ … }

da.Update(ds, "athlete");

ds.AcceptChanges();

dgvStudent.Refresh();

3.3實(shí)例分析

在上面的實(shí)例中,雖然兩種數(shù)據(jù)訪問方式都可以實(shí)現(xiàn)相同的功能,但是綜合考慮各方面因素,往往會(huì)采用兩種訪問方式相結(jié)合的模式。在實(shí)現(xiàn)將sportsmeet數(shù)據(jù)庫(kù)中的athlete表數(shù)據(jù) (下轉(zhuǎn)第22頁(yè))

(上接第15頁(yè))

查找出來并顯示在DataGridview控件的過程中,顯然用DataReader讀取速度快,但它只能一行行讀取數(shù)據(jù),也不能直接綁定到顯示控件上,因此在這里最好用Dataset直接作為數(shù)據(jù)源,處理更簡(jiǎn)單。如果對(duì)athlete表數(shù)據(jù)進(jìn)行修改,用DataAdapter對(duì)象的update方法受限制的條件多,用連接訪問方式執(zhí)行Command命令處理更為合適。綜合上述分析,這里我們最好用斷開訪問方式做查詢,用連接的方式做增加、刪除、修改。

4 結(jié)論

在數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)開發(fā)過程中,我們的目標(biāo)是追求運(yùn)行的高性能和提高資源的利用效率。ADO.NET作為訪問數(shù)據(jù)庫(kù)的.NET技術(shù),使得程序員從原來繁重編碼工作中的解脫出來,以更方便、更直觀的方式來操作數(shù)據(jù)。隨著LINQ、Entity Framework、ASP.NET MVC等各種軟件開發(fā)新技術(shù)不斷發(fā)展,雖然這些技術(shù)對(duì)簡(jiǎn)化對(duì)數(shù)據(jù)庫(kù)操作做了不少改進(jìn),但還有很多的新問題擺在面前。例如,如何結(jié)合當(dāng)前大數(shù)據(jù)云計(jì)算技術(shù)[5],讓.NET應(yīng)用程序更高效訪問數(shù)據(jù);如何提高數(shù)據(jù)庫(kù)應(yīng)用程序的可維護(hù)性;如何保障數(shù)據(jù)的安全有效[6];這些還有待不斷地探索和研究。

參考文獻(xiàn):

[1] 嚴(yán)勛,孫虎. 企業(yè)管理信息系統(tǒng)實(shí)現(xiàn)模式研究[J]. 微計(jì)算機(jī)信息,2007(11):31-32.

[2] 劉曉剛,吳俊峰. C# WEB數(shù)據(jù)庫(kù)編程[M]. 北京:清華大學(xué)出版社,2010.

[3] 修乾. 基于Web的.NET應(yīng)用系統(tǒng)開發(fā)[J]. 計(jì)算機(jī)工程,2003(21):185-186.

[4] 莊越,王槐彬. C#程序設(shè)計(jì)與項(xiàng)目實(shí)戰(zhàn)[M]. 北京:電子工業(yè)出版社,2014.

[5] 覃雄派,王會(huì)舉,等. 數(shù)據(jù)管理技術(shù)的新格局[J]. 軟件學(xué)報(bào),2013,24(2):175-191.

[6] 曾建國(guó). 大數(shù)據(jù)時(shí)代數(shù)據(jù)庫(kù)信息系統(tǒng)安全風(fēng)險(xiǎn)評(píng)估技術(shù)分析[J]. 信息安全與技術(shù),2015(9):27-28.

安乡县| 宜兰县| 宁阳县| 益阳市| 克山县| 且末县| 千阳县| 田东县| 鹤峰县| 普兰店市| 呼伦贝尔市| 牡丹江市| 共和县| 云霄县| 佛山市| 嵩明县| 临城县| 山东省| 普安县| 达拉特旗| 峡江县| 宜黄县| 高安市| 沧州市| 大兴区| 芒康县| 怀集县| 栖霞市| 互助| 屯门区| 天祝| 襄城县| 丹东市| 华坪县| 梁山县| 香格里拉县| 柘城县| 福泉市| 镇远县| 洛南县| 略阳县|