ALTER TABLE文は、既存のテーブル構造を変更するために使用します。カラム名を変更するには、RENAME COLUMN句を使用します。
読み進める前に、私たちのモダンなPostgreSQLクライアント、Beekeeper Studioをご紹介させてください。テーブル構造エディタで名前を編集するだけでカラム名を変更でき、PostgreSQLでは無料でご利用いただけます。こちらからダウンロードできます。
構文:
ALTER TABLE table_name RENAME COLUMN old_column_name TO new_column_name;
例:
次のような構造のemployeesテーブルがあるとします。
CREATE TABLE employees (
id SERIAL PRIMARY KEY,
firstname VARCHAR(50),
lastname VARCHAR(50),
dob DATE
);
カラムdobの名前をbirthdateに変更するには、次のコマンドを使用します。
ALTER TABLE employees RENAME COLUMN dob TO birthdate;
ステップごとのガイド
1. 既存のテーブル構造を確認する
まず、テーブルの現在の構造を把握しておきましょう。psqlの\dコマンドやpgAdminを使ってテーブルの構造を表示できます。
\d employees
出力:
Column | Type | Collation | Nullable | Default
-----------+-----------------------+-----------+----------+--------------------------------------
id | integer | | not null | nextval('employees_id_seq'::regclass)
firstname | character varying(50) | | |
lastname | character varying(50) | | |
dob | date | | |
2. カラム名を変更する
ALTER TABLEコマンドを実行してカラム名を変更します。
ALTER TABLE employees RENAME COLUMN dob TO birthdate;
3. 変更を確認する
再度テーブルの構造を表示して、カラム名が変更されたことを確認します。
\d employees
出力:
Column | Type | Collation | Nullable | Default
-----------+-----------------------+-----------+----------+--------------------------------------
id | integer | | not null | nextval('employees_id_seq'::regclass)
firstname | character varying(50) | | |
lastname | character varying(50) | | |
birthdate | date | | |
注意点
- 依存関係: カラム名を変更しても、ビュー、関数、トリガー、その他のデータベースオブジェクト内のそのカラムへの参照は自動的に更新されません。これらのオブジェクトは手動で更新する必要があります。
- 権限: テーブル構造を変更するために必要な権限があることを確認してください。
- バックアップ: スキーマを変更する前に、必ずデータベースのバックアップを取ってください。
Beekeeper Studioでカラム名を変更する
Beekeeper Studioを使えば、SQL文を直接書く代わりにGUIで操作できます。オープンソースのSQLエディタ兼データベースマネージャーであるBeekeeper Studioなら、PostgreSQLのカラム名の変更を簡単かつ素早く行えます。
Beekeeper Studioでカラム名を変更する手順:
- PostgreSQLデータベースに接続します。
- 対象のテーブルを開きます。
- すべてのカラムが一覧表示されるので、名前を変更したいカラムをクリックします。
- 新しい名前を入力してEnterキーを押します。
SQLコマンドはすべてBeekeeper Studioが処理してくれます。さらに、他の多くのSQL方言にも対応しているため、別のSQL環境へもスムーズに移行できます。
まとめ
PostgreSQLでカラム名を変更すると、データベーススキーマの可読性と保守性を高められます。ALTER TABLE … RENAME COLUMNコマンドを使う方法でも、Beekeeper StudioのようなSQLエディタを使う方法でも、簡単に行えます。実行時エラーを避けるため、カラム名を変更する前に依存関係を確認して更新しておきましょう。
こちらの記事もおすすめです:
Beekeeper Studioは無料 & オープンソースのPostgreSQL GUIです
まさに探していたPostgreSQLクライアントです!他との違いはUIです。クリーンで直感的、そしてパワフル。使いにくいPGAdminとはお別れです。 - David Cyprian
Beekeeper Studioは高速で直感的、使いやすいPostgreSQLクライアントです。他にも多数のデータベースに対応しており、Windows、Mac、Linuxで快適に動作します。
PostgreSQLユーザーによるBeekeeper Studio 利用者の声
pgAdminと違って、Beekeeperは驚くほどシンプルに使えるのに機能も充実しています。しかも価格も手頃です!データベースのバックアップ機能が特に便利です。本当に素晴らしいソフトウェアです。
素晴らしいツールです。PostgresとMySqlのDB管理において、これまでで最も実用的なIDEです。面倒なことなく、とにかくちゃんと動きます :-)