如果发生任何错误,我将插入一系列带有回滚选项的行。
BEGIN TRY
BEGIN TRANSACTION
INSERT INTO myTable (myColumns ...) VALUES (myValues ...);
INSERT INTO myTable (myColumns ...) VALUES (myValues ...);
COMMIT TRAN -- Transaction Success!
END TRY
BEGIN CATCH
IF @@TRANCOUNT > 0
ROLLBACK TRAN --RollBack
END CATCH
在 C# 中,我在 for 循环中插入行。是否也可以在这里获得相同的功能?
foreach(string lst in str[])
{
//insert query
dbl.ExecSqlNonQuery("sp_tbltest", CommandType.StoredProcedure);
}
如果循环中发生任何错误,所有行都应该回滚。