MS Sql 2008 r2にテーブルがあり、列に制約を追加したいのですが、次のような3つの値しか受け入れることができません。
myColum char(2) constrain values (A1, B2, C3)
MS Sql 2008 r2にテーブルがあり、列に制約を追加したいのですが、次のような3つの値しか受け入れることができません。
myColum char(2) constrain values (A1, B2, C3)
このようなもの:
myColum char(2) check (myColum in ('A1', 'B2', 'C3'))
SQLFiddle:http ://sqlfiddle.com/#!3/8e304
SQL CHECK Constraint
SQL Server でサポートされているものを利用します。
CREATE TABLE test
(
myColum char(2) NOT NULL
CONSTRAINT chk_Person CHECK (myColum in ('A1', 'B2', 'C3'))
)
ALTER TABLE <table>
ADD CHECK col in ('A1', 'B2', 'C3')
試す:
ALTER TABLE YourTable WITH CHECK ADD CONSTRAINT ck_y CHECK (myColum in ('A1','B2','C3'))
GO
CREATE TABLE
(
myColumn char(2) NOT NULL check(myColumn= 'A1' or myColumn= 'B2' myColumn= 'C3')
)