先月データベースをmysqldumpから入手しました。今、データベース内のすべてのテーブルは、余分な列を追加している、と言う:mysql:挿入するカラムのデフォルト値を設定する
country varchar(20) not null.
「US」に設定され、国を使用してデータベースにダンプ・ファイルをインポートする方法?データベースには他の国のデータがあるため、データベースを削除して再作成することはできません。
手動で私はダンプSQLファイルに二つのことを行う必要があります。
1. remove all create table statements,
2. add country("US") to all insert statements.
が、SQLダンプファイルは巨大です。これを達成する良い方法はありますか?おかげさまで
ダンプファイルには、右の列 'country'が含まれていませんか?そして、 'US'という値を持つすべてのテーブルに' country'カラムを追加しますか?私は正しい? – 1000111
これを行う最もクリーンな方法は、 'country'カラムのデフォルト値に設定することができますが、これには' ALTER TABLE'文を発行する必要があります。 –
これに関連するN個のテーブルが見つかり、ダンプを別のファイル名にコピーします。それらのNの新しいテーブル名にfind-and-replace-allを使用してテーブル名を微調整します。これらは新しいテーブル名になります。そのスクリプトを実行します。今度はあなたのデータベースには米国だけのN個の新しいテーブルがあります。続行する。それ以降は何をするつもりであるのか(つまり、他のテーブルへの挿入など?USは挿入物のリテラルとして?) – Drew