0

我在 MS Sql 2008 r2 中有一个表,我想在列中添加一个约束,我只能接受 3 个值,例如

myColum      char(2)    constrain values (A1, B2, C3)
4

5 回答 5

3

像这样的东西:

myColum  char(2)  check (myColum in ('A1', 'B2', 'C3'))

SQLFiddle:http ://sqlfiddle.com/#!3/8e304

于 2012-08-08T13:30:39.007 回答
2

利用SQL CHECK Constraintsql server 支持的。

CREATE TABLE test
(
    myColum       char(2) NOT NULL
    CONSTRAINT chk_Person CHECK (myColum in ('A1', 'B2', 'C3')) 
)
于 2012-08-08T13:31:54.613 回答
1
ALTER TABLE <table>
ADD CHECK col in ('A1', 'B2', 'C3')
于 2012-08-08T13:30:29.903 回答
0

尝试:

ALTER TABLE YourTable WITH CHECK ADD  CONSTRAINT ck_y CHECK (myColum in ('A1','B2','C3'))
GO
于 2012-08-08T13:31:54.580 回答
0
CREATE TABLE
(
 myColumn char(2) NOT NULL check(myColumn= 'A1' or myColumn= 'B2'  myColumn= 'C3') 
) 
于 2013-02-01T17:33:22.010 回答