C# 该行已经属于还有一个表 的解决方法

news/2024/7/8 3:08:22

产生错误的代码:

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);

转载于:https://www.cnblogs.com/zfyouxi/p/5304628.html


http://www.niftyadmin.cn/n/3376632.html

相关文章

Jquery UI - DatePicker 在Dialog中无法自动隐藏的解决思路

通过Jquery UI Dialog模态展示如下的一个员工编辑页面,但是遇到一个奇怪的问题:点击Start Date的input元素后,其无法失去焦点。从而导致DatePicker控件在选择日期后无法自动隐藏。 解决思路:给DatePicker加上onSelect事件&#xf…

d3框架项目应用

晚点再写转载于:https://www.cnblogs.com/ey-151210/p/5309967.html

javascript实现非递归--归并排序

另一道面试题是实现归并排序,当然,本人很不喜欢递归法,因为递归一般都是没有迭代法好。所以首选都是用迭代法,但是迭代法确实是难做啊,至底而上的思想不好把握。 这是我的实现代码 /*** 非递归版归并排序,思…

如何在同一系统里同时启动多个Tomcat

需要在同一系统里启动多个tomcat,应该怎么处理? tomcat是个服务程序,需要占用几个通讯端口,所以默认情况是不能启动多个tomcat,如果要启动多个tomcat,需要修改配置文件,通过在配置文件设置不同的通讯端口就可以做到.文件 %TOMCAT_HOME%/conf…

Docker Swarm 让你事半功倍

2016 年 DockerCon (天啊……我多么希望我当时在场)上展示的最重大的变革之一就是 1.12 版本引擎的 Swarm 模式。它意味着什么呢?它意味着:如果你在运行 Docker 1.12时 ,你就可以原生创建一个 Swarm 集群。 创建一个 s…

CSAcademy Beta Round #3 a-game

题目连接 a-game 大意:有一个只包含A和B的字符串,两个人分别取这个串的子串,但是每一次取不能与之前取到过的子串有交集,最后谁取到的所有串中A的总数量少的判为胜。如果一样,则为平手。 给出这样的字符串,…

(笔记)Linux内核学习(七)之内核同步机制和实现方式

一 原子操作 指令以原子的方式执行——执行过程不被打断。 1 原子整数操作 原子操作函数接收的操作数类型——atomic_t //定义 atomic_t v;//初始化 atomic_t u ATOMIC_INIT(0);//操作 atomic_set(&v,4); // v 4 atomic_add(2,&v); // v v 2 6 atomic_in…

剑指Offer(Java版):不用加减乘除做加法

2019独角兽企业重金招聘Python工程师标准>>> 题目:写一个函数,求两个整数之和,要求在函数体内不得适用,-,* ,./ 四则运算符号 面试的时候被问道这个问题,首先我们分析人们是如何进行…