Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Проверка существования таблицы  [new]
avm2
Member

Откуда:
Сообщений: 92
Подскажите пожалуйста как проверить существует ли определённая таблица и если её нет, то создать её
22 июл 09, 10:45    [7443789]     Ответить | Цитировать Сообщить модератору
 Re: Проверка существования таблицы  [new]
Supra93
Member

Откуда:
Сообщений: 8174
avm2,
например
OBJECT_ID (Transact-SQL)
22 июл 09, 10:48    [7443810]     Ответить | Цитировать Сообщить модератору
 Re: Проверка существования таблицы  [new]
iap
Member

Откуда: Москва
Сообщений: 46975
avm2
Подскажите пожалуйста как проверить существует ли определённая таблица и если её нет, то создать её
IF OBJECT_ID(N'ИмяТаблицы','U') IS NULL
 PRINT 'Таблицы [ИмяТаблицы] не существует!'
ELSE
 PRINT 'Есть таблица [ИмяТаблицы].';
22 июл 09, 11:13    [7444025]     Ответить | Цитировать Сообщить модератору
 Re: Проверка существования таблицы  [new]
hermann
Member

Откуда:
Сообщений: 20
Или так тоже можна
IF NOT EXISTS (SELECT * FROM SYSOBJECTS WHERE NAME='TableName' AND xtype='U')	
	/*сделать то-то*/
22 июл 09, 11:41    [7444224]     Ответить | Цитировать Сообщить модератору
 Re: Проверка существования таблицы  [new]
avm2
Member

Откуда:
Сообщений: 92
Большое спасибо
22 июл 09, 14:01    [7445279]     Ответить | Цитировать Сообщить модератору
 Re: Проверка существования таблицы  [new]
Supra93
Member

Откуда:
Сообщений: 8174
hermann
Или так тоже можна
IF NOT EXISTS (SELECT * FROM SYSOBJECTS WHERE NAME='TableName' AND xtype='U')	
	/*сделать то-то*/

сравните планы
SELECT * FROM SYSOBJECTS WHERE NAME='TableName' AND xtype='U'
select object_id('TableName')
22 июл 09, 14:17    [7445413]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить