Oracle DB でカラムの順序を変更するには
Oracle DB でカラムの順序を入れ替えたりするには、ALTER TABLE
では操作できないので、以下のように操作する。
-- 元となる table_1 からカラム順を変更して SELECT し、table_2 を作る
CREATE TABLE table_2 AS SELECT column_c, column_b, column_a FROM table_1;
-- table_1 を削除する
DROP TABLE table_1;
-- 削除するのが怖ければリネームして退避する
-- RENAME table_1 TO table_before;
-- 先ほど作成した table_2 を table_1 にリネームして元に戻す
RENAME table_2 TO table_1;
このように、カラム順を変更したいテーブルのコピーを CREATE TABLE ... AS SELECT
で作れば良い。