1

可能重复:
ExecuteNonQuery 要求命令在我的代码中有事务错误

strSQL = "insert into............";

SqlTransaction objSqlTransaction = Master.objSqlDbComm.SqlConnectionObject.BeginTransaction();
try
{
    Master.objSqlDbComm.ExecuteNonQuery(strSQL);
    objSqlTransaction.Commit();
}
catch(Exception)
{
    objSqlTransaction.Rollback();
}
finally
{
    objSqlTransaction.Dispose();
}

当我使用上面的代码得到错误

当分配给命令的连接处于挂起的本地事务中时,ExecuteNonQuery 要求该命令具有事务。该命令的 Transaction 属性尚未初始化。

4

1 回答 1

1

你需要给命令对象ExecuteNonQuery

做这样的事情:

SqlCommand cmd = new SqlCommand(your_sqlText, your_sqlcon, your_sqlTrans);  

    cmd.ExecuteNonQuery(); 
于 2012-12-03T05:48:15.733 回答