您好,登錄后才能下訂單哦!
今天小編給大家分享的是C#中DataSet有什么作用,相信很多人都不太了解,為了讓大家更加了解C#中DataSet的作用,所以給大家總結(jié)了以下內(nèi)容,一起往下看吧。一定會(huì)有所收獲的哦。
C#中DataSet的用法
DataSet類是ADO.NET中最核心的成員之一,也是各種開發(fā)基于.Net平臺(tái)程序語言開發(fā)數(shù)據(jù)庫應(yīng)用程序最常接觸的類。每一個(gè)DataSet都有很多個(gè)DataTables和Relationships。RelationShip應(yīng)該也是一種表,特殊的是,這個(gè)表只是用來聯(lián)系兩個(gè)數(shù)據(jù)表的。每一個(gè)DataTable都有很多datarows和datacols, 也包括ParentRelations,ChildRelations 和一些限制條件像主鍵不可以重復(fù)的限制。
DataSet每一行有一個(gè)RowState屬性。主要是反映當(dāng)前行是否已經(jīng)被刪掉了,被更新了,還是本沒變。有如下的幾個(gè)選項(xiàng): Deleted, Modified, New, and Unchanged。
對(duì)DataSet的任何操作,都是在計(jì)算機(jī)緩存中完成的。
在從數(shù)據(jù)庫完成數(shù)據(jù)抽取后,DataSet就是數(shù)據(jù)的存放地,它是各種數(shù)據(jù)源中的數(shù)據(jù)在計(jì)算機(jī)內(nèi)存中映射成的緩存,所以有時(shí)說DataSet可以看成是一個(gè)數(shù)據(jù)容器。
DataSet對(duì)象是一個(gè)可以用XML形式表示的數(shù)據(jù)視圖,是一種數(shù)據(jù)關(guān)系視圖。
DataSet使用方法一般有三種:
1.把數(shù)據(jù)庫中的數(shù)據(jù)通過DataAdapter對(duì)象填充DataSet
DataAdapter填充DataSet的過程分為二步:首先通過DataAdapter的SqlCommand屬性從數(shù)據(jù)庫中檢索出需要的數(shù)據(jù)。SqlCommand其實(shí)是一個(gè)Command對(duì)象。然后再通過DataAdapter的Fill方法把檢索來的數(shù)據(jù)填充DataSet。
2.通過DataAdapter對(duì)象操作DataSet實(shí)現(xiàn)更新數(shù)據(jù)庫
DataAdapter是通過其Update方法實(shí)現(xiàn)以DataSet中數(shù)據(jù)來更新數(shù)據(jù)庫的。當(dāng)DataSet實(shí)例中包含數(shù)據(jù)發(fā)生更改后,此時(shí)調(diào)用Update方法,DataAdapter 將分析已作出的更改并執(zhí)行相應(yīng)的命令(INSERT、UPDATE 或 DELETE),并以此命令來更新數(shù)據(jù)庫中的數(shù)據(jù)。
3. 把XML數(shù)據(jù)流或文本加載到DataSet
DataSet中的數(shù)據(jù)可以從XML數(shù)據(jù)流或文檔創(chuàng)建。加載XML數(shù)據(jù)流和文檔到DataSet中是可使用DataSet對(duì)象的ReadXml方法。
數(shù)據(jù)綁定分成二類:簡(jiǎn)單型數(shù)據(jù)綁定和復(fù)雜型數(shù)據(jù)綁定。適用于簡(jiǎn)單型數(shù)據(jù)綁定組件一般有Lable、TextBox等,適用于復(fù)雜性數(shù)據(jù)綁定的組件一般有DataGrid、ListBox、ComboBox等。
簡(jiǎn)單型數(shù)據(jù)
綁定一般使用這些組件中的DataBindings屬性的Add方法把DataSet中某一個(gè)DataTable中的某一行和組件的某個(gè)屬性綁定起來,從而達(dá)到顯示數(shù)據(jù)的效果。
比如:textBox1.DataBindings.Add ( "Text" , dsDataSet1, " Customers. CustomerID ") ;
復(fù)雜性數(shù)據(jù)綁定
一般是設(shè)定組件的DataSource屬性和DisplayMember屬性來完成數(shù)據(jù)綁定的。DataSource屬性值一般設(shè)定為要綁定的DataSet,DisplayMember屬性值一般設(shè)定為要綁定的數(shù)據(jù)表或數(shù)據(jù)表中的某一列。
比如:
dataGrid1.DataSource = dsDataSet1 ; dataGrid1.DataMember = " Customers " ;
DataSet的屬性Tables可以獲取該DATASET中表的數(shù)量:DataSet.Tables.Count
DataSet的Tables是一個(gè)Table數(shù)組,指定其中的一個(gè)表:DataSet.Tables[i];//i為
Table在數(shù)組序列中的位置 或 DataSet.Tables["表名"];
通過Table的Rows對(duì)象組的Count獲取該表的記錄數(shù):DataSet.Tables[i].Rows.Count;
獲取列數(shù):DataSet.Tables[i].Columns.Count;
關(guān)于C#中DataSet有什么作用就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的參考價(jià)值,可以學(xué)以致用。如果喜歡本篇文章,不妨把它分享出去讓更多的人看到。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。