将行从一个表复制到另一个表

时间:2014-07-29 10:56:24

标签: c# mysql

我在MySQL命令中插入和删除行有问题。我想将table1中的一行复制到table2

commandSQL.CommandText = "INSERT IGNORE INTO table1 SELECT * FROM table2 WHERE simnum=@simnum AND msg=@msg;" +
                         "DELETE FROM table1 WHERE simnum= @simnum AND msg= @msg";
commandSQL.Prepare();
commandSQL.Parameters.AddWithValue("@simnum", argumentComport[2]);
commandSQL.Parameters.AddWithValue("@msg", argumentComport[1]);

commandSQL.ExecuteNonQuery();

有人帮助我吗?


命令INSERT和DELETE未执行。


是的,我致电Open()。另一个SQL命令是工作。但这不是。 commandSQL.CommandType = CommandType.Text - 默认设置

1 个答案:

答案 0 :(得分:0)

您的SQL看起来有点奇怪:

"INSERT IGNORE INTO table1 SELECT * FROM table2 WHERE simnum=@simnum AND msg=@msg;" +
"DELETE FROM table1 WHERE simnum= @simnum AND msg= @msg";

您正在插入table1并随后立即从table1中删除。

您还可以尝试在顶部添加commandSQL.CommandType = CommandType.Text;吗? 您是否也在SqlConnection对象上调用了Open?

你有例外吗?希望这会有所帮助。