Я искал неприятную хранимую процедуру и заметил, что после ее запуска, и я закрыл сеанс, в tempdb все еще осталось много временных таблиц. Они имеют имена, как следующее:Таблицы Temp в SQL Server 2005 не удаляются автоматически
#000E262B
#002334C4
#004E1D4D
#00583EEE
#00783A7F
#00832777
#00CD403A
#00E24ED3
#00F75D6C
Если я запускаю этот код:
if object_id('tempdb..#000E262B') is null
print 'Does NOT exist!'
я получаю:
Does NOT exist!
Если я:
use tempdb
go
drop TABLE #000E262B
Я получаю ошибка:
Msg 3701, Level 11, State 5, Line 1
Cannot drop the table '#000E262B', because it does not exist or you do not have permission.
Я подключен к SQL Server как sysadmin. Использование SP3 64-бит. В настоящее время у меня более 1100 этих таблиц в tempdb, и я не могу избавиться от них. На сервере базы данных нет других пользователей.
Остановка и запуск SQL Server в моем случае не является вариантом.
Спасибо!
Где вы видите, что таблицы все еще существуют? –
use tempdb go select * from INFORMATION_SCHEMA.tables –