1. 程式人生 > >圖文講解DAO.NET DataSet物件

圖文講解DAO.NET DataSet物件

我想大家都知道ADO.NET的基本組成結構和特點,在這裡就不和大家說了,筆者今天主要就DAO.NET DataSet物件來詳細分析一下。希望大家能更深入的瞭解DAO.NET DataSet物件結構,常用屬性及方法的運用。


1.資料集DataSet概述

資料集DataSet是斷開與資料來源的連線時,可以被使用的資料記錄在記憶體中的快取。前面在4-1-3節斷開式資料庫訪問連線部分提到,可以把資料集DataSet看作是記憶體中的資料庫。它在應用程式中對資料的支援功能十分強大。DataSet一經建立,就能在應用程式中充當資料庫的位置,為應用程式提供資料支援。
資料集DataSet的資料結構可以在.net開發環境中通過嚮導完成,也可以通過程式碼來增加表、資料列、約束以及表之間的關係。資料集DataSet中的資料既可以來自資料來源,也可以通過程式碼直接向表中增加資料行。這也看出,資料集DataSet類似一個客戶端記憶體中的資料庫,可以在這個資料庫中增加、刪除資料表,可以定義資料表結構和表之間的關係,可以增加、刪除表中的行。


資料集DataSet不考慮其中的表結構和資料是來自資料庫、XML檔案還是程式程式碼,因此資料集DataSet不維護到資料來源的連線。這緩解了資料庫伺服器和網路的壓力。對資料集DataSet的特點總結可以總結為四點:
第一,使用資料集物件DataSet無需與資料庫直接互動;
第二,DataSet物件是儲存從資料庫檢索到的資料的物件;
第三,DataSet物件是零個或多個表物件的集合,這些表物件由資料行和列、約束和有關表中資料關係的資訊組成;
第四,DataSet物件既可容納資料庫的資料,也可以容納非資料庫的資料來源。

2.DataSet的結構,常用屬性及方法

資料集DataSet是以DataSet物件形式存在的。DAO.NET DataSet物件是一種使用者物件,此物件表示一組相關表,在應用程式中這些表作為一個單元來引用。DataSet物件的常用屬性是Tables、Relations等。DataSet物件的層次結構圖所示:


DataSet物件由資料表及表關係組成,所以DataSet物件包含DataTable物件集合Tables和DataRelation物件集合Relations。而每個資料表又包含行和列以及約束等結構,所以DataTable物件包含DataRow物件集合Rows、DataColumn物件集合Columns和Constraint物件集合Constraints。DataSet層次結構中的類請參見表所示:

說明
DataTableCollection包含特定資料集的所有DataTable物件
DataTable表示資料集中的一個表
DataColumnCollection表示DataTable物件的結構
DataRowCollection
表示DataTable物件中的實際資料行
DataColumn表示DataTable物件中列的結構
DataRow表示DataTable物件中的一個數據行

類 說明 
DataTableCollection 包含特定資料集的所有DataTable物件 
DataTable 表示資料集中的一個表 
DataColumnCollection 表示DataTable物件的結構 
DataRowCollection 表示DataTable物件中的實際資料行 
DataColumn 表示DataTable物件中列的結構 
DataRow 表示DataTable物件中的一個數據行