只有当所有的命令都提交成功时才向数据库提交数据,否则只要有一条不能执行成功就不向数据库提交
示例:
SqlTransaction trans = sqlCnn.BeginTransaction(); //启动一个事物
sqlCmm.Transaction = trans; //为事物创建命令
try
{
foreach (DataRow row in table.Rows)
{
sqlCmm.Parameters[0].Value = row["id"];
sqlCmm.Parameters[1].Value=row["name"];
sqlCmm.Parameters[2].Value=row["nums"];
sqlCmm.ExecuteNonQuery();
}
trans.Commit(); //提交事务
}
catch(Exception ex)
{
Response.Write(ex.Message);
trans.Rollback(); //回滚事务
}