*PostgresSQLのALTER文 [#u8d1969d]

***PostgreSQLのバージョン [#f15b1cf0]
 SELECT version();

***テーブル名の変更 [#a4d1cefe]
 ALTER TABLE テーブル名 RENAME TO 新テーブル名;

***列の追加/削除 [#a6719dc9]
 ALTER TABLE テーブル名 ADD COLUMN 列の定義;
 ALTER TABLE テーブル名 DROP COLUMN 列名;

***列名の変更 [#y8bc7f8f]
 ALTER TABLE テーブル名 RENAME COLUMN 列名 TO 新列名;

***列の型変更(8.0~) [#ke166795]
 ALTER TABLE テーブル名 ALTER COLUMN sample_name TYPE VARCHAR(255)


***参照整合性の追加/削除(外部キー) [#x20501cb]
 ALTER TABLE テーブル名 ADD CONSTRAINT FK_SAMPLE_ID FOREIGN KEY(カラム名) REFERENCES テーブル名(カラム名);
 ALTER TABLE テーブル名 DROP CONSTRAINT FK_SAMPLE_ID;


***制約の追加/削除(ユニーク) [#t944d5a1]
 ALTER TABLE テーブル名 ADD CONSTRAINT 制約名 UNIQUE (列名);
 ALTER TABLE テーブル名 DROP CONSTRAINT 制約名;


***NOT-NULL制約の追加/削除 [#z6e101c4]
 ALTER TABLE テーブル名 ALTER COLUMN 列名 SET NOT NULL;
 ALTER TABLE テーブル名 ALTER COLUMN 列名 DROP NOT NULL;

***デフォルトの追加/削除 [#g717d70e]
 ALTER TABLE テーブル名 ALTER COLUMN 列名 SET DEFAULT デフォルト値;
 ALTER TABLE テーブル名 ALTER COLUMN 列名 DROP DEFAULT;

***シーケンス値の取得 [#ecd72d5e]
 SELECT sequence_name, last_value FROM sample_table_seq;
 SELECT NEXTVAL('sample_table_seq') as seq_no;

***シーケンス値の更新 [#ecd72d5e]
 SELECT SETVAL('sample_table_seq', 100);

#counter


トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS