2016-03-21 6 views
0

Ruby on Railsプロジェクトでsqlite3をmysqlに変換しました。 rake db:dumpを使ってsqlite3バックアップファイルを作った。そして私は削除し、いくつかの列をDBに追加しました。私は「すくいデシベル:ロード」をやった時に最後に、私はエラーruby​​ on rails mysql2 :: error: 'フィールドリスト'の 'pay_status'を知らない

mysql2::error: unknown column 'pay_status' in 'field list'

は実際に、私は「pay_status」列を削除してしまったが、それはsqlite3のバックアップファイルにあります。 このエラーを修正するにはどうすればよいですか?いくつかの列は変更されますが、DBを保存する方法はありますか?

答えて

0

rake db:loaddb/schema.rbからデータベーススキーマをロードします。あなたは、本質的にdb/schema.rbにデータベースからスキーマをダンプrake db:schemaを使用してスキーマをダンプしてからカラムを追加/削除することによって、データベースに変更を加えた場合ので、必ずrake db:loadを実行する前に、もう一度rake db:schemaを実行します。そうしないと、スキーマファイル(db/schema.rb)が実際のデータベースと同期しなくなります。

関連する問題