MySQL(MariaDB)でカラム数が異なるデータをインポートする方法

スポンサーリンク
スポンサーリンク

先日、テーブルの刷新を行う際に、カラムが増えたテーブルにダンプデータをインポートしようとしたところ、カラム数が異なるからダメだよと怒られてしまいました。
ダンプデータを見るとINSERT文にカラム名の定義がありません。
普通にエクスポートしたらそうなりますよね(笑
ということで、今回は、そのようなケース対応方法を書いていきたいと思います。

と言っても、単純ですが、ダンプ出力時に「-c」オプションを追加してカラム名を含んだデータでエクスポートするだけです!!
※「-t」はCREATE文を出力しないオプションになりますので、データのみのエクスポートになります。


$ mysqldump -u user -p -t -c database_name > data.dump

これで以下のようカラム名が明示された INSERT 文でエクスポートされますので、あとは、該当の環境で出力したダンプをインポートします。


INSERT INSTO table_name(column1, column2, column3, column10) VALUES (value1, value2, value3, value10);

データをインポートしたい該当の環境で、出力したダンプファイルをインポートします。


$ mysql -u user -p database_name < data.dump

これで無事にインポートできました。
めでたし!めでたし!(^0^)/

コメント

タイトルとURLをコピーしました