DataTable

 DataTable物件就如同實體資料庫的資料表,一個DataSet物件可以包含一個以上的資料表,因此,你可以使用Tables屬性,根據傳入的索引值,取出其中特定的DataTable物件 :

DataTable myDT = myDataSet.Tables[intIndex] ;

Tables屬性傳回一個DataTableCollection 物件,這個物件包含了DataSet物件中所有的資料表集合,傳入的索引值則用以指定回傳集合中特定的DataTable物件,以下的敘述,依序取得 資料表集合物件,然後取出集合中的第一個資表物件,myDS 為DataSet物件,而myDTC[0] 則是資料表集合中的第一個資料表物件 :

DataTableCollection myDTC = myDS.Tables ;
DataTable myDT = myDTC[0] ;

一旦件的DataColumnCollection集合物件,敘述如下,myDT為上述 DataTable 物件,myDCC則為一DataColumnCollection集合物件:

DataColumnCollection myDCC = myDT.Columns;

你同樣可以藉由索引值取得特定的欄位值 :

DataColumn myDC =myDCC[0] ;

你也可以使用欄位名稱代替索引,敘述如下 :

DataColumn myDC =myDCC[”CustomerID”] ;

這兩種敘均能夠用來取得特定的欄位值。

DataRow物件則代表某一特定資料列,藉由這個物件你可以修正、異動其所屬DataTable物件裏所儲存的資料,而類似上述的DataColumn物件,DataTable的Columns屬性回傳一個包含所有資料列內容的DataRowCollection 集合物件。

DataRowCollection myDRC = myDT.Rows ;

DataRowCollection 集合物件提供方法Find,藉由這個方法,你可以搜尋某個設定為PK值的欄位,符合特定條件值的資料列。

由於DataSet是一種斷線物件,因此,我們可以隨意針對其中DataTable物件所儲存的資料,進行異動操作,而不會影響到原始的資料來源,直到你使用DataAdapter物件將異動的結果傳回資料庫,接下來說明DataSet裏,DataTable物件儲存資料的異動方法。

對於DataTable物件來說,新增一筆資料的意義乃是將一個包含新資料內容的DataRow物件加到其原先的DataRowCollection 集合物件,因此,首先你必需產生一個空的DataRow物件,這個新DataRow物件包含了原始DataTable物件相同的欄位結構,你可以使用DataTable類別所提供的NewRow方法,回傳一個新的DataRow物件 :

DataRow myRow = myDT.NewRow() ;

然後再依序將對應欄位的資料值填入適當的欄位,由於DataRow物件與呼叫NewRow方法的DataTable物件有著完全相同的架構,因此你可以一一指定其欄位值,其語法形式如下:

myRow[0] = value0 ;
myRow[1] = value1 ;

myRow[2] = value2 ;

完成欄位資料的新增動作,引用 DataRowCollection 集合物件的 Add 方法將此資料列加入集合中即可。

myDRC.Add(myRow) ;

DataRowCollection 集合物件提供另一個方法 Remove, 允許你進行資料的刪除操作,你只要將指定的DataRow物件,當作參數傳入此方法即可 。

myDRC.Remove(myRow)

而更新一筆現存的資料則針對所要更新的 DataRow 物件,依序指定其欄位內容,如上述新增一筆資料列。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值