新しい列を追加してデフォルト値を設定し、さらにその列に許可される値を定義するALTER TABLE
式を作成したいと思います。これはテキスト列であり、許可されているのは「value1」、「value2」、および「value3」のみです。デフォルトは 'value1'である必要があります
以下の構文図によると:
私はここまで来ています
ALTER TABLE exampleTable ADD COLUMN new_column VarChar(20) DEFAULT 'value1'
しかし、私は許可された値を設定する方法が確実にわかりません。
何かのように作ることは可能ですか
CONSTRAINT CHECK new_column IN( '値1'、 '値2'、 '値3)
? search condition
ダイアグラムは私をかなり混乱させることを認めなければなりません。
alter table ExampleTable
add (new_column varchar(20) default 'value1',
constraint ckExampleTable check (new_column in ('value1', 'value2', 'value3')));
これは実際には2つの異なるステートメントとして行う必要があります。
ALTER TABLE test
ADD new_column VARCHAR(20) DEFAULT 'value1'
ALTER TABLE test
ADD CONSTRAINT CK_exampleTable_newColumn CHECK (new_column IN ('value1','value2','value3'))
SQLサーバー:
ALTER TABLE table_name
ADD CONSTRAINT constraint_name CHECK (column_name IN ('aaa', 'bbb', ...))