ADO.NET的概念是什么

本篇文章給大家分享的是有關(guān)ADO.NET的概念是什么,小編覺(jué)得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說(shuō),跟著小編一起來(lái)看看吧。

專(zhuān)注于為中小企業(yè)提供成都網(wǎng)站建設(shè)、成都網(wǎng)站制作服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)饒河免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了近千家企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過(guò)網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

ADO.NET的名稱(chēng)起源于ADO(ActiveX Data Objects),這是一個(gè)廣泛的類(lèi)組,用于在以往的Microsoft技術(shù)中訪問(wèn)數(shù)據(jù).之所以使用ADO.NET名稱(chēng),是因?yàn)镸icrosoft希望表明,這是在.NET編程環(huán)境中優(yōu)先使用的數(shù)據(jù)訪問(wèn)接口.

一、ADO.NET的作用

它提供了平臺(tái)互用性和可伸縮的數(shù)據(jù)訪問(wèn)。ADO.NET增強(qiáng)了對(duì)非連接編程模式的支持,并支持RICH XML。由于傳送的數(shù)據(jù)都是XML格式的,因此任何能夠讀取XML格式的應(yīng)用程序都可以進(jìn)行數(shù)據(jù)處理。事實(shí)上,接受數(shù)據(jù)的組件不一定要是ADO .NET組件,它可以是基于一個(gè)Microsoft Visual Studio的解決方案,也可以是任何運(yùn)行在其它平臺(tái)上的任何應(yīng)用程序。

ADO.NET是一組用于和數(shù)據(jù)源進(jìn)行交互的面向?qū)ο箢?lèi)庫(kù)。通常情況下,數(shù)據(jù)源是數(shù)據(jù)庫(kù),但它同樣也能夠是文本文件、Excel表格或者XML文件。

ADO.NET允許和不同類(lèi)型的數(shù)據(jù)源以及數(shù)據(jù)庫(kù)進(jìn)行交互。然而并沒(méi)有與此相關(guān)的一系列類(lèi)來(lái)完成這樣的工作。因?yàn)椴煌臄?shù)據(jù)源采用不同的協(xié)議,所以對(duì)于不同的數(shù)據(jù)源必須采用相應(yīng)的協(xié)議。一些老式的數(shù)據(jù)源使用ODBC協(xié)議,許多新的數(shù)據(jù)源使用OleDb協(xié)議,并且現(xiàn)在還不斷出現(xiàn)更多的數(shù)據(jù)源,這些數(shù)據(jù)源都可以通過(guò).NET的ADO.NET類(lèi)庫(kù)來(lái)進(jìn)行連接。

ADO.NET提供與數(shù)據(jù)源進(jìn)行交互的相關(guān)的公共方法,但是對(duì)于不同的數(shù)據(jù)源采用一組不同的類(lèi)庫(kù)。這些類(lèi)庫(kù)稱(chēng)為Data Providers,并且通常是以與之交互的協(xié)議和數(shù)據(jù)源的類(lèi)型來(lái)命名的。

二、ADO.NET包含的類(lèi)

1、Connection 類(lèi)

和數(shù)據(jù)庫(kù)交互,你必須連接它。連接幫助指明數(shù)據(jù)庫(kù)服務(wù)器、數(shù)據(jù)庫(kù)名字、用戶名、密碼,和連接數(shù)據(jù)庫(kù)所需要的其它參數(shù)。Connection對(duì)象會(huì)被Command對(duì)象使用,這樣就能夠知道是在哪個(gè)數(shù)據(jù)源上面執(zhí)行命令。

與數(shù)據(jù)庫(kù)交互的過(guò)程意味著你必須指明想要執(zhí)行的操作。這是依靠Command對(duì)象執(zhí)行的。你使用Command對(duì)象來(lái)發(fā)送SQL語(yǔ)句給數(shù)據(jù)庫(kù)。Command對(duì)象使用Connection對(duì)象來(lái)指出與哪個(gè)數(shù)據(jù)源進(jìn)行連接。你能夠單獨(dú)使用Command對(duì)象來(lái)直接執(zhí)行命令,或者將一個(gè)Command對(duì)象的引用傳遞給DataAdapter,它保存了一組能夠操作下面描述的一組數(shù)據(jù)的命令。

2、Command對(duì)象

成功于數(shù)據(jù)建立連接后,就可以用Command對(duì)象來(lái)執(zhí)行查詢、修改、插入、刪除等命令; Command對(duì)象常用的方法有ExecuteReader方法、ExecuteScalar()方法和ExecuteNonQuery()方法;插入數(shù)據(jù)可用ExecuteNonQuery()方法來(lái)執(zhí)行插入命令。

3、DataReader類(lèi)

許多數(shù)據(jù)操作要求你只是讀取一串?dāng)?shù)據(jù)。DataReader對(duì)象允許你獲得從Command對(duì)象的SELECT語(yǔ)句得到的結(jié)果??紤]性能的因素,從DataReader返回的數(shù)據(jù)都是快速的且只是“向前”的數(shù)據(jù)流。這意味著你只能按照一定的順序從數(shù)據(jù)流中取出數(shù)據(jù)。這對(duì)于速度來(lái)說(shuō)是有好處的,但是如果你需要操作數(shù)據(jù),更好的辦法是使用DataSet。

4、DataSet對(duì)象

DataSet對(duì)象是數(shù)據(jù)在內(nèi)存中的表示形式。它包括多個(gè)DataTable對(duì)象,而DataTable包含列和行,就象一個(gè)普通的數(shù)據(jù)庫(kù)中的表。你甚至能夠定義表之間的關(guān)系來(lái)創(chuàng)建主從關(guān)系(parent-child relationships)。DataSet是在特定的場(chǎng)景下使用――幫助管理內(nèi)存中的數(shù)據(jù)并支持對(duì)數(shù)據(jù)的斷開(kāi)操作的。DataSet是被所有Data Providers使用的對(duì)象,因此它并不像Data Provider一樣需要特別的前綴。

6、DataAdapter類(lèi)

某些時(shí)候你使用的數(shù)據(jù)主要是只讀的,并且你很少需要將其改變至底層的數(shù)據(jù)源。同樣一些情況要求在內(nèi)存中緩存數(shù)據(jù),以此來(lái)減少并不改變的數(shù)據(jù)被數(shù)據(jù)庫(kù)調(diào)用的次數(shù)。DataAdapter通過(guò)斷開(kāi)模型來(lái)幫助你方便的完成對(duì)以上情況的處理。當(dāng)在一單批次的對(duì)數(shù)據(jù)庫(kù)的讀寫(xiě)操作的持續(xù)的改變返回至數(shù)據(jù)庫(kù)的時(shí)候,DataAdapter 填充(fill)DataSet對(duì)象。DataAadapter包含對(duì)連接對(duì)象以及當(dāng)對(duì)數(shù)據(jù)庫(kù)進(jìn)行讀取或者寫(xiě)入的時(shí)候自動(dòng)的打開(kāi)或者關(guān)閉連接的引用。

另外,DataAdapter包含對(duì)數(shù)據(jù)的SELECT、INSERT、UPDATE和DELETE操作的Command對(duì)象引用。你將為DataSet中的每一個(gè)Table都定義DataAadapter,它將為你照顧所有與數(shù)據(jù)庫(kù)的連接。所有你將做的工作是告訴DataAdapter什么時(shí)候裝載或者寫(xiě)入到數(shù)據(jù)庫(kù)。

7、DataTable類(lèi)

DataTable 是一個(gè)數(shù)據(jù)網(wǎng)格控件。它可以被應(yīng)用在 VB 和 ASP 上。它無(wú)須代碼就可以簡(jiǎn)單的綁定數(shù)據(jù)庫(kù)。它具有微軟風(fēng)格的用戶界面。

DataTable的實(shí)例化以及添加列:

DataTable dt = new DataTable();   dt.Columns.Add("ID");   dt.Columns.Add("Name");   DataRow dr = dt.NewRow();   object[] objs = { 1, "Name" };   dr.ItemArray = objs;   dt.Rows.Add(dr);   this.dataGridView1.DataSource = dt;

ADO.NET是與數(shù)據(jù)源交互的.NET技術(shù)。有許多的Data Providers,它將允許與不同的數(shù)據(jù)源交流――取決于它們所使用的協(xié)議或者數(shù)據(jù)庫(kù)。然而無(wú)論使用什么樣的Data Provider,你將使用相似的對(duì)象與數(shù)據(jù)源進(jìn)行交互。SqlConnection對(duì)象管理與數(shù)據(jù)源的連接。SqlCommand對(duì)象允許你與數(shù)據(jù)源交流并發(fā)送命令給它。為了對(duì)進(jìn)行快速的只“向前”地讀取數(shù)據(jù),使用SqlDataReader。如果想使用斷開(kāi)數(shù)據(jù),使用DataSet并實(shí)現(xiàn)能進(jìn)行讀取或者寫(xiě)入數(shù)據(jù)源的SqlDataAdapter。

以上就是ADO.NET的概念是什么,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見(jiàn)到或用到的。希望你能通過(guò)這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

當(dāng)前題目:ADO.NET的概念是什么
URL網(wǎng)址:http://bm7419.com/article38/jdchsp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供靜態(tài)網(wǎng)站企業(yè)建站、響應(yīng)式網(wǎng)站軟件開(kāi)發(fā)、網(wǎng)站策劃、網(wǎng)站導(dǎo)航

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站建設(shè)