Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Особенности работы со временными таблицами / 3 сообщений из 3, страница 1 из 1
15.02.2002, 12:38
    #32023129
Александр Степанов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Особенности работы со временными таблицами
Много раз видел, как именуются локальные временные таблицы в tempdb..SysObjects и никогда не задумывался к чему это может привести. Но сегодня угораздило меня написать что-то вроде этого:

create table #tmpA (pk int)
create table #tmpA_ (pk int)

...

drop table #tmpA
drop table #tmpA_

Запускаю:

Server: Msg 2714, Level 16, State 6, Line 2
There is already an object named '#tmpA_' in the database.

Ладно, батч довольно большой, и мучил я его долго. Пробую:

drop table #tmpA_

Получаю:
Server: Msg 3701, Level 11, State 5, Line 1
Cannot drop the table '#tmpA_', because it does not exist in the system catalog.

И так далее, и тому подобное...

Что интересно, в правилах идентификаторов нет ни слова о том, что имена локальных временных таблиц не могут заканчиваться на знак подчеркивания.
...
Рейтинг: 0 / 0
15.02.2002, 13:11
    #32023132
MadDog
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Особенности работы со временными таблицами
Есть такое дело. Хорошо хоть с переменными типа table работает.
...
Рейтинг: 0 / 0
15.02.2002, 14:20
    #32023138
Glory
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Особенности работы со временными таблицами
Это относиться только к локальным временным таблицам, созданным в одной процедуре/пакете. Вот такой скрипт будет работать

create table #tmpA (pk int)
exec('create table #tmpA_ (pk int) SELECT * FROM tempdb..sysobjects WHERE id = OBJECT_ID(''tempdb..#tmpA_'')')
SELECT * FROM tempdb..sysobjects WHERE id = OBJECT_ID('tempdb..#tmpA')
drop table #tmpA
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Особенности работы со временными таблицами / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]