今あるテーブルにカラムを追加するクエリは以下の通り。
追加する列については、既にNULLの行が存在してしまうため、NOT-NULLの制約条件は付与できません。
上記の処理は、テーブルの最終カラムの次に追加され、カラム位置の指定はできません。
カラム位置を指定したい場合は、新しいテーブルを作成して旧テーブルのデータをinsertする方法で処理します。
以上。
追加する列については、既にNULLの行が存在してしまうため、NOT-NULLの制約条件は付与できません。
=# ALTER TABLE <テーブル名> ADD COLUMN <カラム名> <定義>;
上記の処理は、テーブルの最終カラムの次に追加され、カラム位置の指定はできません。
カラム位置を指定したい場合は、新しいテーブルを作成して旧テーブルのデータをinsertする方法で処理します。
--- 元テーブルをリネーム
ALTER TABLE <テーブル名> RENAME TO <変更後のテーブル名>;
--- 新規カラムを追加したテーブルを作成
CREATE TABLE <新テーブル名>
( <カラムA> <定義>,
<カラムB> <定義>,
<カラムC> <定義>,
:
PRIMARY KEY ・・・
);
--- 元テーブルから新テーブルにデータを移行
INSERT INTO <新テーブル名>
( <カラムA>, <カラムB>, <カラムC>, ・・・)
SELECT <カラムA>, <カラムB>, <カラムC>, ・・・
FROM <変更後のテーブル名>;
--- 元テーブルを削除
DROP TABLE <変更後のテーブル名>;
以上。