我刚刚注意到一个存储过程正在使用以下 BEGIN/COMMIT TRAN。
BEGIN TRAN
INSERT INTO SomeTable
(
TypeID
)
VALUES
(
@TypeID
)
SET @OvID = SCOPE_IDENTITY()
COMMIT TRAN
在 INSERT 和 SCOPE_IDENTITY 上使用事务是一种好习惯吗?
以这种方式使用 TRAN 会大大减慢 INSERT 过程吗?
当您有多个可能失败的语句(即像两个 INSERTS)时,我总是会考虑使用事务。在这种情况下,我可以看到 INSERT 失败,但我怀疑 SCOPE_IDENTITY 总是会成功。