Ограничить столбец varchar () определенными значениями?


есть ли способ указать, например, 4 различных значения для столбца varchar в MS SQL Server 2008?

например, мне нужен столбец с именем Frequency (varchar), который принимает только "Daily", "Weekly", "Monthly", "Yearly" в качестве возможных значений

можно ли это установить в среде SQL Server Management Studio при создании таблицы?

2 79

2 ответа:

вы уже смотрели на добавление check constraint на том столбце, который будет ограничивать значения? Что-то вроде:

CREATE TABLE SomeTable
(
   Id int NOT NULL,
   Frequency varchar(200),
   CONSTRAINT chk_Frequency CHECK (Frequency IN ('Daily', 'Weekly', 'Monthly', 'Yearly'))
)

вы хотите ограничение Check.

проверочные ограничения определяют допустимые значения из логического выражения, которое не является на основе данных в другом столбце. Для например, диапазон значений колонка зарплаты может быть ограничена создание проверочного ограничения, которое позволяет использовать только данные, которые варьируются от 15 000 до 100 000$. Этот предотвращает заработная плата от за пределами обычного диапазона заработной платы.

вы хотите что-то вроде:

ALTER TABL