ROLLBACK TRANSACTION请求没有对应的BEGIN TRANSACTION,但是还是报错

The ROLLBACK TRANSACTION request has no corresponding BEGIN TRANSACTION, but still getting an error

简单查询: 在 UPDATE 之前,EffectiveStartDt 的值为 NULL 在 UPDATE 和 ROLLBACK 之后,我希望它回到 NULL

begin tran t1
update MasterPayor 
set EffectiveStartDt = '2020-09-17' 
where MasterPayorId = 1
commit

rollback tran t1

我已经定义了事务,但我仍然收到回滚错误

COMMIT 提交对数据库的更新并清除以匹配 BEGIN TRAN 开始的事务,因此当您尝试回滚时出现错误。如果你想回滚使用 ROLLBACK 而没有 COMMIT:

begin tran t1
update MasterPayor 
set EffectiveStartDt = '2020-09-17' 
where MasterPayorId = 1

rollback tran t1