C# DataSet和DataTable详解
2009-04-21 08:26:15 来源:WEB开发网下面介绍修改DataRow中的内容:
DataRow dr=ds.Tables["Customer"].Rows.Find("ANTON");
if(dr==null)
else
{
dr.BeginEdit();
dr["CompanyName"]="newValue";
dr["ContactName"]="newValue2";
dr.EndEdit();
}
//
上面代码通过Row集合的Find方法来在DataTable中的行进行定位,找到"ANTON"行,再修改"ANTON"行中CompanyName列和ContactName列的值。通过BeginEdit和EndEdit来缓存对行的修改,还可调用 CancelEdit为取消修改。
判断某列是否为空值:
DataRow dr=ds.Tables["Customers"].Rows.Find("aaa");
if(dr.IsNull("ContactName");
..
else
dr["ContactName"]=DBNull.Value
//
这里判断ContactName列是否为空,如果不是则为其赋空值,呵,很无厘头的做法,这里只为演示为列赋空值的做法。
删除DataRow:
有两种方法可以删除DataRow,Delete方法和Remove方法和RemoveAt方法。其区别是Delete方法实际上不是从DataTable中删除掉一行,而是将其标志为删除,仅仅是做个记号,而Remove方法则是真正的从DataRow中删除一行,RemoveAt方法是根本行的索引来删除。列:
DataRow dr=ds.Tables["table"].Rows.Find("a");
ds.Tables["table"].Remove(dr);
或
ds.Tables["table"].Remove(index);
//dr 为"a"所在的行,查出后将其删除,index为 "a"所在的索引号。关于DataSet中的其用法,参照MSDN
- ››详解Windows XP中可以被禁用的服务
- ››详解教育类网站的三种赢利模式
- ››详解Windows 7 SP1新增功能
- ››详解XML各种解析方法
- ››详解PHP异常机制的流程及原理
- ››详解ISA2006防火墙三种客户端代理与配置
- ››详解DMZ的部署与配置:ISA2006系列之二十九
- ››详解ISA2006三种客户端:ISA2006系列之二
- ››详解Radius服务器在VPN中的应用:ISA2006系列之二...
- ››详解操作主机角色,Active Directory系列之九
- ››详解MOM2005监控Active Directory:MOM2005系列之...
- ››详解Discuz! X1.5配套统计系统
更多精彩
赞助商链接