PostgresSQLのALTER文

PostgreSQLのバージョン

SELECT version();

テーブル名の変更

ALTER TABLE テーブル名 RENAME TO 新テーブル名;

列の追加/削除

ALTER TABLE テーブル名 ADD COLUMN 列の定義;
ALTER TABLE テーブル名 DROP COLUMN 列名;

列名の変更

ALTER TABLE テーブル名 RENAME COLUMN 列名 TO 新列名;

列の型変更(8.0~)

ALTER TABLE テーブル名 ALTER COLUMN sample_name TYPE VARCHAR(255)

参照整合性の追加/削除(外部キー)

ALTER TABLE テーブル名 ADD CONSTRAINT FK_SAMPLE_ID FOREIGN KEY(カラム名) REFERENCES テーブル名(カラム名);
ALTER TABLE テーブル名 DROP CONSTRAINT FK_SAMPLE_ID;

制約の追加/削除(ユニーク)

ALTER TABLE テーブル名 ADD CONSTRAINT 制約名 UNIQUE (列名);
ALTER TABLE テーブル名 DROP CONSTRAINT 制約名;

NOT-NULL制約の追加/削除

ALTER TABLE テーブル名 ALTER COLUMN 列名 SET NOT NULL;
ALTER TABLE テーブル名 ALTER COLUMN 列名 DROP NOT NULL;

デフォルトの追加/削除

ALTER TABLE テーブル名 ALTER COLUMN 列名 SET DEFAULT デフォルト値;
ALTER TABLE テーブル名 ALTER COLUMN 列名 DROP DEFAULT;

シーケンス値の取得

SELECT sequence_name, last_value FROM sample_table_seq;
SELECT NEXTVAL('sample_table_seq') as seq_no;

シーケンス値の更新

SELECT SETVAL('sample_table_seq', 100);
Counter: 6555, today: 2, yesterday: 0

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2013-09-24 (火) 14:56:23 (1369d)