|
Удаление временной таблицы в случае Rollback Transaction
|
|||
---|---|---|---|
#18+
Добрый день, всем! Возник такой вопрос, создается таблица, куда делается инсерт данных по определенному условию и в случае, скажем, ошибки, выполняется Rollback Transaction. Так вот вопрос, удаляется ли временная таблица при откате или нужно дополнительно при Rollback Transaction дописывать drop table #ORDER как в скрипте ниже и не вызовет ли этот drop других проблем? Заранее спасибо alter procedure [dbo].[CUT] @Cut_days int = 30 as set nocount ON Declare @ORDER_rowcount1 int Begin Transaction select * into #ORDER from ORDER where EDITDATE < (GETUTCDATE() - @Cut_days ) SET @ORDER_rowcount1 = @@rowcount IF @ORDER_rowcount1 = 0 BEGIN Rollback Transaction drop table #ORDER END ... |
|||
:
Нравится:
Не нравится:
|
|||
23.11.2020, 12:00 |
|
Удаление временной таблицы в случае Rollback Transaction
|
|||
---|---|---|---|
#18+
georgy_2012, drop table не нужен, у вас таблица создается в рамках пользовательской транзакции, если транзакция откатится то и создание таблицы тоже. текущий код по сути должен ругаться (при исполнении) на инструкции drop table #ORDER поскольку на момент начала инструкции таблицы уже не будет ... |
|||
:
Нравится:
Не нравится:
|
|||
23.11.2020, 12:05 |
|
Удаление временной таблицы в случае Rollback Transaction
|
|||
---|---|---|---|
#18+
felix_ff, Большое спасибо! Все понял ... |
|||
:
Нравится:
Не нравится:
|
|||
23.11.2020, 12:45 |
|
|
start [/forum/topic.php?fid=46&msg=40021370&tid=1685383]: |
0ms |
get settings: |
5ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
60ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
others: | 315ms |
total: | 460ms |
0 / 0 |