powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как определить существует ли временная таблица с заданным именем ?
9 сообщений из 9, страница 1 из 1
Как определить существует ли временная таблица с заданным именем ?
    #32064842
Фотография RedPank
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
CREATE TABLE #TmpTable
( ...
...
)
...
Если существует #TmpTable, то ...

Информация о временных таблицах лежит в tempdb..sysobjects. Но как определить кому эта таблица принадлежит ... ?
...
Рейтинг: 0 / 0
Как определить существует ли временная таблица с заданным именем ?
    #32064850
Фотография RedPank
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
... сам нашел

if OBJECT_ID('tempdb..#TmpTable) is Null
begin
print 'Нет таблицы !'
end
else
begin
print 'EXIST'
end
...
Рейтинг: 0 / 0
Как определить существует ли временная таблица с заданным именем ?
    #32064938
Фотография Дед Маздай
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
use tempdb
go
create proc #TmpTable as select 1

exec #TmpTable

use Northwind

if OBJECT_ID('tempdb..#TmpTable') is Null
print 'Нет таблицы !'
else
print 'EXISTS'

------------------------------------------
EXISTS
...
Рейтинг: 0 / 0
Как определить существует ли временная таблица с заданным именем ?
    #32064958
Фотография snake
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
То Дед Маздай:
А так
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
use tempdb 
go 
create proc #TmpTable as select  1  
go
exec #TmpTable 

use Northwind 

if OBJECT_ID('tempdb..#TmpTable','U') is Null 
print 'Нет таблицы !' 
else 
print 'EXISTS' 
...
Рейтинг: 0 / 0
Как определить существует ли временная таблица с заданным именем ?
    #32065138
Фотография Gobzo Kobler
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это тоже работает:
Код: plaintext
1.
2.
3.
4.
5.
create table #a (a int)
if exists (select name from tempdb..sysobjects where name like '#a%')
print '#a exists'
else
print '#a does not exist'
drop #a
...
Рейтинг: 0 / 0
Как определить существует ли временная таблица с заданным именем ?
    #32065139
Фотография Дед Маздай
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Уже лучше :)
...
Рейтинг: 0 / 0
Как определить существует ли временная таблица с заданным именем ?
    #32065140
Фотография Дед Маздай
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я имел в виду вариант snake. Для Gobzo Kobler:
create table #MyTmpTbl (a int)
--через 500 строк кода
create table #MyTmpTbl1 (a int)
--еще через 500
drop table #MyTmpTbl
--и потом, когда про это все забыли
if exists (select name from tempdb..sysobjects where name like '#MyTmpTbl%')
print '#MyTmpTbl exists'
else
print '#MyTmpTbl does not exist'
...
Рейтинг: 0 / 0
Как определить существует ли временная таблица с заданным именем ?
    #32065780
Фотография Дед Маздай
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ввиду того, что данный вопрос всплывает с завидной периодичностью, предлагаю ответ snake включить в FAQ.
...
Рейтинг: 0 / 0
Как определить существует ли временная таблица с заданным именем ?
    #32065883
Фотография Gobzo Kobler
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дед Маздай:

Это назвается напрашиваться на проблему. Я же не программист, а не терапевт :)
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как определить существует ли временная таблица с заданным именем ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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