PostgreSQLのconstraint

テーブルを作成したのちにテーブルの主キー制約を変更したいことがある
その時に、ALTER TABLE ~ DROP CONSTRAINT と ALTER TABLE ~ ADD CONSTRAINT を使用する

### テーブル作成
CREATE TABLE test(a int PRIMARY KEY, b int, c int);

### 主キー制約の削除
名前をつけていなければ テーブル名_pkey でOK
ALTER TABLE test DROP CONSTRAINT test_pkey;

not nullの削除の方法
ALTER TABLE test ALTER COLUMN a DROP NOT NULL;

### 主キー制約の追加
ALTER TABLE test ADD CONSTRAINT test_pkey PRIMARY KEY(a, b);