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

Откуда: Москва
Сообщений: 2646
MS SQL 2005

IF EXISTS(SELECT field_id FROM tab)
SELECT 1
ELSE 
SELECT 0
--ERROR: Invalid column name 'field_id'.

ALTER TABLE dbo.tab ADD field_id int NULL

Как сделать проверку, если такого поля нет в таблице, создать (добавить).
13 авг 12, 12:03    [13003049]     Ответить | Цитировать Сообщить модератору
 Re: Добавить в таблицу новый столбец, проверка существования столбца  [new]
iiyama
Member

Откуда:
Сообщений: 642
information_schema.columns
13 авг 12, 12:16    [13003119]     Ответить | Цитировать Сообщить модератору
 Re: Добавить в таблицу новый столбец, проверка существования столбца  [new]
trew
Member

Откуда: Москва
Сообщений: 2646
iiyama,
Спасибо

IF NOT EXISTS(
    SELECT 1 
    FROM [information_schema].[columns]
    WHERE table_name ='tab' AND column_name ='field_id'
    )
ALTER TABLE dbo.tab
ADD field_id int NULL 
13 авг 12, 12:23    [13003162]     Ответить | Цитировать Сообщить модератору
 Re: Добавить в таблицу новый столбец, проверка существования столбца  [new]
iap
Member

Откуда: Москва
Сообщений: 47145
IF COL_LENGTH(N'[dbo].[tab]',N'field_id') IS NULL
ALTER TABLE [dbo].[tab] ADD [field_id] int NULL;
13 авг 12, 15:37    [13004633]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить