Delete()之后需要datatable.AccepteChanges()方法确认完全删除,因为Delete()只是将相应列的状态标志为删除, 
还可以通过datatable.RejectChanges()回滚,使该行取消删除。 

如果要彻底删除datarow,需要Delete()和AccepteChanges()方法同时使用,

            结论:再向一个表中设定 列,添加 行的时候,列必须是通过 new DataColumn()得到的,=赋值的会报错;

                        添加行,比如在insertAt() 行必须是 要添加到的table的  dt.NewRow()   最后添加到那个table的,如果需要其他dt的值,可以通过itemarray进行赋值。 

DataTable dt1 = new DataTable();
            DataColumn c1 = new DataColumn("name",typeof(string));
            DataColumn c2 = new DataColumn("age",typeof(int));
            dt1.Columns.Add(c1);
            dt1.Columns.Add(c2);
            DataRow r1 = dt1.NewRow();
            r1["name"] = "zs";
            r1["age"] = 25;
            DataRow r2 = dt1.NewRow();
            r2["name"] = "ls"; 
            r2["age"] = 26;
            dt1.Rows.Add(r1);
            dt1.Rows.Add(r2);
 
            //DataColumn c3 = c1;
            //DataColumn c4 = c2;
            DataTable dt2 = new DataTable();
         //dt2.Columns.Add(c3);//报错 列name已经属于另外一张表
 
            DataColumn cc1 = new DataColumn("name", typeof(string));
            DataColumn cc2 = new DataColumn("age", typeof(int));
            dt2.Columns.Add(cc1); dt2.Columns.Add(cc2);
           // dt2.Rows.InsertAt(r1, 0);//报错 : 该行已经属于另一个表。
 
            DataRow newr = dt2.NewRow();
            newr.ItemArray = r1.ItemArray;
            dt2.Rows.InsertAt(newr,0);

DataTable经典报错{列/行已属于其他表}的更多相关文章

  1. DataTable插件报错:Uncaught TypeError: Cannot read property 'style' of undefined

    DataTable插件报错:Uncaught TypeError: Cannot read property 'style' of undefined 原因:table 中定义的列和aoColumns ...

  2. easyui treegrid idField 所在属性中值有花括号(如Guid)当有鼠标事件时会报错,行记录一下

    easyui treegrid idField 所在属性中值有花括号(如Guid)当有鼠标事件时会报错,行记录一下

  3. Windows文件共享,报错"该用户已禁用"解决方案

    文章背景:学校机器有俩个用户think和adminsitrator.默认administrator禁用,think属于administrators组. 经排错得问题出现情况.因为同学们都是Think用 ...

  4. protobuf新增message报错:类型已存在

    问题现象:在一个已有的proto文件(RecommendResponse.proto)中新增一个message(BookList),用maven编译proto文件时报错: E:\workspace\m ...

  5. python+selenium 批量执行时出现随机报错问题【已解决】

    出现场景:用discover方法批量执行py文件,出现随机性的报错(有时a.py报错,有时b.py报错...),共同特点:均是打开新窗口后,切换最新窗口,但定位不到新窗口的元素,超时报错.由于个人项目 ...

  6. 部署php程序报错:站点已关闭

    场景: 之前把公司线上的php源码包拿到笔记本的虚拟机上测试部署,部署完成后通过浏览器访问总是出现站点已关闭 原因:把线上php程序配置文件config.php里面的数据库连接信息改成了笔记本虚拟机的 ...

  7. vs2015 安装之后安装MSSM 2016 导致 vs启动报错 System.ArgumentException 已添加了具有相同键的项,ActivityLog.xml

    如题,先是装了vs2015,开发什么的都没有问题,后来安装了SqlServer2016 MSSM,出大问题了,vs2015打开就报错,具体错误如上,还想还有个ActivityLog.xml 这个文件的 ...

  8. go报错unimplemented: 64-bit mode not compiled in与mingw 64位安装报错ERROR res已解决

    问题一:cc1.exe: sorry, unimplemented: 64-bit mode not compiled in 参考:https://www.cnblogs.com/lesroad/p/ ...

  9. oracle报错ORA-01653 dba_free_space中没有该表空间

    新建了一个表空间t101,在dba_tablespaces和dba_data_files都出现了,在dba_free_space却没有,这个很有可能是表空间满了. 插入数据会报错:ORA-01653: ...

随机推荐

  1. [改善Java代码]Lock与synchronized是不一样的

    很多编码者都会还说,Lock类和synchronized关键字用在代码块的并发性和内存上时语义是一样的.

  2. Six important .NET concepts 【Turn】

    Introduction This article will explain six important concepts: stack, heap, value types, reference t ...

  3. 关于easyui的一些小知识点(1)

    让layout布局自动适应浏览器宽度只需要加上fit="true"属性.

  4. asp自动补全html标签自动闭合(正则表达式)

    Function closeHTML(strContent) Dim arrTags, i, OpenPos, ClosePos, re, strMatchs, j, Match Set re = N ...

  5. C# 4 dynamic 动态对象 动态类型转换

    public class User { //使用省缺参数,一般不需要再为多态做各种静态重载了 public User( string name = "anonym", string ...

  6. 如何用代码开启“个人热点”功能?如何用代码把iOS设备设置成一个无线路由?

    不好意思,你办不到.苹果不允许.因为你没有权限.

  7. hiho 1182 : 欧拉路·三

    1182 : 欧拉路·三 这时题目中给的提示: 小Ho:是这样的,每次转动一个区域不是相当于原来数字去掉最左边一位,并在最后加上1或者0么. 于是我考虑对于"XYYY",它转动之后 ...

  8. Android 快捷方式相关操作

    尽管现在少数手机不支持快捷方式,但是仍然有大部分手机是支持的.创建快捷方式,可以减少用户在应用列表繁多的应用程序中查找应用的时间,快速进入应用:或是应用中的某个功能使用频率较高,创建快捷方式,可以快速 ...

  9. 解决oracle归档日志写满了(ORA-00257)的问题

    解决ORA-00257: archiver error. Connect internal only, until freed 此问题属于归档日志满了. 解决办法: SQL> select * ...

  10. NodeJs获取函数名称和函数操作整理

    var aa = function () { log("xxxx"); }; aa(); var model = {}; model.test = function () { lo ...