正确的记录值不会插入第二个表

时间:2018-02-16 15:58:03

标签: c#

我将一些数据从一个文件插入另一个文件,第一个文件有三个 不同的值记录,当循环完成时,当我看到第二个文件它有三个记录但重复具有相同的值时,你能帮我解决我的代码有什么问题。

从旧文件循环到新文件

foreach (DataRow drtableOld in orderTable.Rows)
{                           
    command.CommandType = CommandType.Text;
    command.CommandText = "insert into Data ([Terminal],[Token_no],[Date],[Time],[Mode]) values(?,?,?,?,?)";
    command.Parameters.AddWithValue("@cTerminal", drtableOld["Terminal"]);
    command.Parameters.AddWithValue("@cToken", drtableOld["Token"].ToString().PadLeft(6,'0')  );
    command.Parameters.AddWithValue("@cDate", drtableOld["Date"]);
    command.Parameters.AddWithValue("@cTime", drtableOld["Time"]);
    command.Parameters.AddWithValue("@cMode", "T");
    command.Connection = yourConnectionHandler;
    command.ExecuteNonQuery();
}

1 个答案:

答案 0 :(得分:2)

您需要在循环开始时清除参数或创建新命令。您还可以将赋值移动到循环外的连接,因为您正在循环中重用该命令。

command.Connection = yourConnectionHandler;
foreach (DataRow drtableOld in orderTable.Rows)
{                           
    command.Parameters.Clear();
    // rest of code unchanged