制約があると言います
ALTER TABLE distributors ADD CONSTRAINT zipchk CHECK (char_length(zipcode) = 5);
郵便番号の長さが6
になるように変更する必要があります。
最初に制約zipchk
を削除してから再作成しますか?
ALTER TABLE distributors DROP CONSTRAINT zipchk;
ALTER TABLE distributors ADD CONSTRAINT zipchk CHECK (char_length(zipcode) = 6);
またはMODIFY
(のような)コマンドがあります:
ALTER TABLE distributors MODIFY CONSTRAINT zipchk CHECK (char_length(zipcode) = 6);
コメントを要約するには:
@ ypercube hinted と同様に、singleコマンドで実行できます。
ALTER TABLE distributors
DROP CONSTRAINT zipchk
, ADD CONSTRAINT zipchk CHECK (length(zipcode) = 6);
Postgres 9.4以降のALTER CONSTRAINT
(ご存じのように)では、FK制約の「延期性」のみを変更できます。だからあなたが探しているものではありません。それ以外には、制約のための「MODIFY
(like)コマンド」はありません(MySQLのMODIFY
を参照してください)。
詳細は ALTER TABLE
のマニュアルで、@ a_horseと同じです。