C# 该行已经属于还有一个表 的解决方法
产生错误的代码:
DataTable dtContract_src = Oper.GetDataTable("select * from T_Contract where ProjectID=" + ProjectID_src + " and Flag=0", con_src);
foreach (DataRow dr in dtContract_src.Rows)
{
String ContractID_src = dr["ContractID"].ToString();
DataTable dtContract_dst = Oper.GetDataTable("select * from T_Contract where ProjectID=" + ProjectID_src + " and ContractID=" + ContractID_src + " and Flag=0", con_dst);
if (dtContract_dst.Rows.Count != 0)
{
impContract_exist++;
continue;
}
dtContract_dst.Rows.Add(dr);
String columns = "";
String paramss = "";
OleDbCommand updateCmd = con_dst.CreateCommand();
foreach (DataColumn dc in dtContract_dst.Columns)
{
if (columns == "")
{
columns = dc.ColumnName;
paramss = "@" + dc.ColumnName;
}
else
{
columns += ", " + dc.ColumnName;
paramss += ", @" + dc.ColumnName;
}
updateCmd.Parameters.Add(new OleDbParameter(dc.ColumnName, dc.DataType);
}
updateCmd.CommandText = "insert into T_Contract(" + columns + ") Values(" + paramss + ")";
updateCmd.ExecuteNonQuery();
//OleDbDataAdapter dataAdap = new OleDbDataAdapter();
//dataAdap.InsertCommand = updateCmd;
//dataAdap.Update(dtContract_dst);
}
错误行:
dtContract_dst.Rows.Add(dr);
解决的方法:
dtContract_dst.Rows.Add(dr.ItemArray);
C# 该行已经属于还有一个表 的解决方法的更多相关文章
- C# 该行已经属于另一个表 的解决方法[转]
该文转自:http://blog.sina.com.cn/s/blog_48e4c3fe0100nzs6.html DataTable dt = new DataTable(); dt = ds.Ta ...
- C#两个DataTable拷贝问题:该行已经属于另一个表的解决方法
一.DataTable.Rows.Add(DataRow.ItemArray); 二.DataTable.ImportRow(DataRow) 三.设置DataTable的tablename,然后.R ...
- Datatable添加数据,提示该行已经属于另一个表的解决方法
一.DataTable.Rows.Add(DataRow.ItemArray); 二.DataTable.ImportRow(DataRow) 三.设置DataTable的tablename,然后.R ...
- (转)DataTable添加行出现“该行已经属于另一个表”的错误!
1 DataTable dt1 = new DataTable(); DataTable dt2 = new DataTable(); //为dt1创建结构 DataColumn pName = ne ...
- 关于ORALCE一个表空间的数据导入到另一个表空间的方法(原创)
用户: whnaproject 所属表空间: whnaproject 新用户 : wniec 所属新表空间: wniec 要求:将用户whnaproject中的数 ...
- SQL Server 保存不了修改后的表的解决方法
客户端报错(配图): 出现问题环境:在新建一个表之后,又想添加一个字段保存表,提示错误. 解决方案:在SQL Server 2008R2 中 对于对于重新保存新建表系统默认设置为“阻止”,在对应设置解 ...
- oracle 11g不能导出空表的解决方法
在oracle 11g r2中,发现传统的exp居然不能导出空的表,然后查询一下, 发现需要如下的步骤去搞,笔记之. oracle 11g 新增了一个参数:deferred_segment_c ...
- 查找SQL SERVER被锁的表和解决方法
查找数据库中被锁表代码: select request_session_id spid,OBJECT_NAME(resource_associated_entity_id) tableName ...
- 一个简单的解决方法:word文档打不开,错误提示mso.dll模块错误。
最近电脑Word无故出现故障,无法打开,提示错误信息如下: 问题事件名称: APPCRASH应用程序名: WINWORD.EXE应用程序版本: 11.0.8328.0应用程序时间戳: 4c717ed1 ...
随机推荐
- js 中对象属性特性的描述
如何自定义属性的特性? 用对象.属性的特性和自定义的属性的特性有什么区别? 它的四大特性 writable enumerable configable 有什么区别? 先预习一个用对象.属性 ...
- [CSS]background背景
css背景样式 序号 中文说明 标记语法 1 背景颜色 {background-color:数值} 2 背景图片 {background-image: url('imgpath/img ...
- 获取Ip 的地域等信息接口-实例
今天项目要用到 查询访问网站用户的IP 然后网上查询了 资料还很多 不过有些已经失效了 在这总结下 腾讯,pconline 的API已经失效 不能使用 淘宝的IP接口地址: http://ip.tao ...
- CANoe 入门 Step by step系列(二)CAPL编程【转】
CAPL就是Communication Application Programming Laguage的缩写,CAPL类似于C语言的语法,因此所有的语法请参考C语言教程,这里不在这里进行详述,关于C语 ...
- Winbind authentication against active directory
Winbind authentication against active directory Description This tip will describe how to configure ...
- PyQt5创建第一个窗体(正规套路)
一.Pyqt5 创建第一个窗体 很多人写窗体程序都是直接敲代码,不使用设计器,我个人不是很赞成这种做法.使用设计器的好处是直观.维护方便,尤其开发复杂窗体的效率高. 但是每次修改ui文件后,需要重新生 ...
- Android Studio与Genymontion的安装
需要安装的软件: VirtualBox 5.1.4 Genymotion 2.7.2 Android Studio 2.1.2 安装步骤: 使用安装版安装Android Studio 1. 执 ...
- I/O CPU
http://www.educity.cn/zk/czxt/201306041038131789.htm http://blog.csdn.net/xiazdong/article/details/6 ...
- 转:synchronized和LOCK的实现原理---深入JVM锁机制
JVM底层又是如何实现synchronized的? 目前在Java中存在两种锁机制:synchronized和Lock,Lock接口及其实现类是JDK5增加的内容,其作者是大名鼎鼎的并发专家Doug ...
- .froxlor 玩起
其实,细想想, 这方面很有操作余地的哟.