アラサーからのプログラマー生活

アラサーの新米PGが必死に頑張る成長記録です。あとは旅行とか。

【postgreSQL】列名の変更方法

こんにちは、堀井です。
先日の参考書を見ていると、テーブル定義の変更をする際のALTER文に関して「列名の変更方法」が見当たらなかったので調べてみました。まだ4章までしか見ていないので、あったらすみません。

ALTERの意味

そもそもALTER TABLEのALTERは「変更する」と言う意味だそうです。
自分は英語の意味を知ることでより一層簡単にプログラムを書けると思っているので、まずは意味を調べます。
alterの意味・使い方 - 英和辞典 Weblio辞書


ALTER文の書き方

ALTER [変更箇所] [変更箇所の具体名] [処理動作] [動作内容];
となります。
もう少し具体例を挙げると、
ALTER TABLE [テーブル名] ADD COLUMN [列名];
と書けば [テーブル名] に [列名] の列を追加することになります。
詳しく書くと
変更箇所:TABLE
具体名:[テーブル名]
処理動作:ADD COLUMN
動作内容:[列名]
こうです。

ALTER TABLE [テーブル名] DROP COLUMN [列名];
と書けば [テーブル名] から [列名] の列を削除することになります。

テーブル名や列名の変更方法

書き間違えた場合はDROPで消してしまってもいいのですが、大量のデータがあると非常に面倒なのでリネームしてしまいましょう。
ALTER TABLE [テーブル名(改名前)] RENAME TO [テーブル名(改名後)];
と書くことでテーブル名を書き換えることが出来ます。
詳しく書くと
変更箇所:TABLE
具体名:[テーブル名(改名前)]
処理動作:RENAME
動作内容:TO [テーブル名(改名後)]
こうです。

同じように列名は
ALTER COLUMN [列名(改名前)] RENAME TO [列名(改名後)];
としたいと思いましたがが、テーブル名を指定していないのでエラーを吐きました。正しくは
ALTER TABLE [テーブル名] RENAME COLUMN [列名(改名前)] TO [列名(改名後)];
となります。
詳しく書くと
変更箇所:TABLE
具体名:[テーブル名]
処理動作:RENAME COLUMN
動作内容:[列名(改名前)] TO [列名(改名後)]

ちょっと分かりづらいですが覚えるしかなさそうですね。




だんだんとこういう記事も増やしていきたい所存です。
しばらくは職業訓練を受けるといいことがありますよ、と言うマーケティング?が出来ればいいなと思います。
それではまた次回。