ベストアンサー1
バージョン3.25.0 2018年9月リリース今ALTER TABLE
では列の名前を変更する。
Really Bad : Column Name
名前を変更する例BetterColumnName
:
ALTER TABLE your_table
RENAME COLUMN "Really Bad : Column Name" TO BetterColumnName
によるとキーワードの使用は"double-quotes"
標準的な方法です
オリジナルの「新しいテーブルを作成して古いテーブルを削除する」の回答は以下にあります。
テーブルがあり、「colb」の名前を「col_b」に変更する必要があるとします。
まず、古いテーブル定義に基づき、列名を更新した一時的な名前で新しいテーブルを作成します。
CREATE TABLE tmp_table_name (
col_a INT
, col_b INT
);
次に、元の表の内容をコピーします。
INSERT INTO tmp_table_name(col_a, col_b)
SELECT col_a, colb
FROM orig_table_name;
古いテーブルを削除します。
DROP TABLE orig_table_name;
最後に、一時テーブルの名前を元の名前に変更します。
ALTER TABLE tmp_table_name RENAME TO orig_table_name;
インデックス、トリガーなどを再作成することを忘れないでください。ドキュメント落とし穴や注意点のより完全な概要を示します。
これらすべてをBEGIN TRANSACTION;
andでラップすることCOMMIT;
もおそらく良いアイデアです。