Ведение журнала TSQL внутри транзакции

Это не позволяет компилятору автоматически изменять значения переменных. переменная переменная предназначена для динамического использования.

17
задан Arvid 16 November 2010 в 15:35
поделиться

2 ответа

Используйте табличную переменную (@temp) для хранения информации журнала. Табличные переменные переживают откат транзакции.

См. эту статью .

13
ответ дан 30 November 2019 в 13:33
поделиться

Если вы хотите эмулировать поведение вложенных транзакций, вы можете использовать именованные транзакции:

begin transaction a

create table #a (i  int)

select * from #a
save transaction b

create table #b (i  int)
select * from #a
select * from #b

rollback transaction b

select * from #a
rollback transaction a

В SQL Server, если вы хотите «суб-транзакцию», вы должны использовать save transaction xxxx, которая работает как контрольная точка оракула. .

-2
ответ дан 30 November 2019 в 13:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: