DataTable的点点滴滴(C#)

难度:3
需要基础: 对数组有一定了解。

1.设置DataTable的主键

// Set up keys object for defining primary key
DataColumn[]keys  =   new  DataColumn[ 1 ];
keys[
0 ] = thisDataSet.Tables[ " Customers " ].Columns[ " CustomerID " ];
thisDataSet.Tables[
" Customers " ].PrimaryKey  =  keys;

注:主键可由表的一列或多列(多主键,参照数据库相关书籍)构成,包含可以在表中唯一标示行的值或值集合。

如果希望在连接数据库,Fill数据表时,就自动对应数据库中表单的主键,复制过来。默认设置无法完成,需明确告诉DataAdapter。

thisAdapter.MissingSchemaAction  =  MissingSchemaAction.AddWithKey;
thisAdapter.Fill(thisDataSet, 
" Customers " );

2.查找表中是否存在主键值为XX的数据行

DataRow findRow  =  thisDataSet.Tables[ " Customers " ].Rows.Find( " XX " );

该行代码是在上面代码的基础上运行的。
findRow为Null,表示不存在;否则指向该行。

3.删除数据表中的某一行 

thisRow  =  thisDataSet.Tables[ " Cutomers " ].Rows[ 3 ];   //指向某一行,也可以指向Find的某一行
thisRow.Delete();

实际上Delete()方法并不执行删除操作,只是将这行的RowState设置为Deleted,在Update()操作执行时,才集中删除和改动受影响的行和数据。

未完待续...

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值