Search code examples
sqlsql-server-2008ssms

Restrict varchar() column to specific values?


Is there a way to specify, for example 4 distinct values for a varchar column in MS SQL Server 2008?

For example, I need a column called Frequency (varchar) that only accepts 'Daily', 'Weekly', 'Monthly', 'Yearly' as possible values

Is this possible to set within the SQL Server Management Studio when creating the table?


Solution

  • Have you already looked at adding a check constraint on that column which would restrict values? Something like:

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