Table.Rows.Remove(dr)和Table.Delete()的区别
来源:互联网 发布:php 执行shell exec 编辑:程序博客网 时间:2024/05/01 04:49
一个DataRow对象刚被创建之后其状态是Detached,是孤立的一个存在,所以建立了DataRow之后在DataRow中的单元填充了数据后还要通过DataTable.Rows.Add(DataRow)方法将此DataRow添加到DataTable,DataRow添加到DataTable后, 这个DataRow的状态就转变为Added。
当修改了这个DataRow后,这个DataRow状态转为Modified,当用DataRow.Delete()方法删除DataRow后,DataRow状态将转为Deleted,不过此行还存在在DataTable中的,只是状态改变了,这时用DataTable.Rows.Count查看行数,跟删除前是一样的。
只有在调用了DataTable.Remove(DataRow)方法后,此DataRow才被从DataTable移除,状态也回复到Detached孤立状态。但对于远程的Remoting的数据集DataTable.Remove(DataRow)方法不能从测表中移出;只能用DataRow.Delete()方法加 AcceptChanges()方法
MSDN对DataRow.Delete 方法的解释:如果行的 RowState 是“Added”,则该行将从表中移除。在使用 Delete 方法后,RowState 变成“Deleted”。在您调用 AcceptChanges 之前,它一直保持“已删除”。可通过调用 RejectChanges 取消删除行。
用Delete(),DataSet的HasChanges()=true;
用Remove(),DataSet的HasChanges()=false;
- Table.Rows.Remove(dr)和Table.Delete()的区别
- Table.Rows.Remove(dr)和Table.Delete()的区别
- Table.Rows.Remove(dr)和Table.Delete()的区别
- C# Rows.Remove() 和 DataRow.Delete() 的区别
- C# Table.Rows[index].Delete()
- DataTable.Clear() 和 DataTable.Table.Rows.Clear() 的区别
- delete from table和truncate table的区别
- delete from table 和drop table的区别
- DROP TABLE、TRUNCATE TABLE和DELETE的区别
- SQL SERVER Truncate Table 和 Delete Table的区别
- delete from和truncate table的区别
- delete from和truncate table的区别
- delete from和truncate table的区别
- SQL TRUNCATE TABLE和DELETE的区别
- delete from和truncate table的区别
- delete table 与delete from table truncate table 的区别
- delete from table & truncate table 的区别
- DELETE 和TRUNCATE TABLE区别
- 两种方法改变信号的值【只是两种语法】
- 书呆子气
- PowerDesigner教程系列
- fedora 8 named.conf文件配置
- IP Networking Control Files
- Table.Rows.Remove(dr)和Table.Delete()的区别
- GPRS模块AT指令集(1)
- 2009.01.16
- 2009.01.17
- 2009.01.18
- GPRS模块AT指令集(2)
- sbo的5个开发原则
- GPRS模块AT指令集(3)
- GPRS模块AT指令集(4)