C# Mysql 事务只处理了第一条SQL语句

MySQLTransactiontrans=(MySQLTransaction)mysqlConn.BeginTransaction();//创建事务cmd.Transa... MySQLTransaction trans = (MySQLTransaction)mysqlConn.BeginTransaction(); //创建事务
cmd.Transaction = trans; //绑定事务
foreach(.........)
{
string sql = ".....";
cmd.CommandText = sql;
cmd.ExecuteNonQuery();
}
trans.Commit();
我想通过事务来批量提交SQL语句以提高插入效率,为什么运行后第一条SQL语句连续执行,插入了N次,且其他SQL语句没有执行?我调试时CommandText的值也是不断变化的,说明每次执行的SQL语句是不同的,可是数据库里插入的却是连续执行第一条SQL插入语句的结果,这是为什么为什么?
我勒个去,我替换一句就解决问题了,但是还是不明白前面的出现的问题是为什么?
MySQLTransaction trans = (MySQLTransaction)mysqlConn.BeginTransaction(); //创建事务
cmd.Transaction = trans; //绑定事务
foreach(.........)
{
string sql = ".....";
cmd = new MySQLCommand(sqlInsert, mysqlConn);
cmd.ExecuteNonQuery();
}
trans.Commit();
展开
 我来答
乍寒还暖Sp
2014-04-11 · TA获得超过912个赞
知道小有建树答主
回答量:509
采纳率:66%
帮助的人:249万
展开全部
说明那个数据库执行对象,是绑定某一特定sql的,
所以每次需要新建一个cmd对象
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式