Откат после вставки, содержащей оператор вывода, завершается с
«Запрос ROLLBACK TRANSACTION не имеет соответствующей BEGIN TRANSACTION.»
Если оператор вывода удален, то он работает. Есть ли объяснение этому поведению?
Пример:
create table test(i integer primary key)
go
begin transaction
insert into test (i) values (1)
insert into test (i) output inserted.i values (1)
go
rollback -- Fails
go
begin transaction
insert into test (i) values (1)
insert into test (i) values (1)
go
rollback -- Works
go