本日は弊社の社内システムで使用しているデータベース(MySQL)の整理です。
で、今回整理を行ったデータベースは、
複数の人間が無造作に項目を追加してしまっているということもあり、
各カラムの並び順がごちゃごちゃになっていました。
なので、
この機会にその辺も整理してやることにしました。
その際の変更用SQLのメモ書きです。
カラムの位置を移動させる場合のSQLは以下のように書きます。
ALTER TABLE テーブル名 MODIFY カラム名(移動させるカラム) 諸々の定義(型やデフォルト値など) AFTER カラム名;
※「AFTER」の後ろに設定したカラムの後ろに移動することになります。
例えば、
ALTER TABLE `sample_table` MODIFY `user_name` INT(1) NOT NULL DEFAULT 0 AFTER `user_id`;
とすれば、
「sample_table」テーブルの「user_name」カラムが「user_id」カラムの後ろに移動します。
簡単ですね。
と言ってテーブルの内容を変更すということは、
何か問題が発生した場合を考えると恐いので、
出来れば行いたくないものです。
初期の段階でしっかりとルールを決めて運用しておくと、
こんな無駄な作業が発生しなくて済んだので、
ここは今後に活かしていきたいですね。
それと、
作業前には必ずDBのバックアップを取っておいて、
かつ、
変更後は中に入っているデータ自体には影響が出ていないことも確認してください。
因みに、
カラムを先頭に移動させる場合には、
ALTER TABLE テーブル名 MODIFY カラム名(移動させるカラム) 諸々の定義(型やデフォルト値など) FIRST;
とすれば、
OKです。
この記事へのコメントはありません。