#ruby-on-rails #database #migration
#ruby-on-rails #База данных #миграция
Вопрос:
Я пытаюсь добавить столбцы в свою базу данных SQLITE3 и у меня возникают некоторые проблемы. Когда я запускаю rake db: migrate в терминале, я получаю:
Исключение SQLite3::CorruptException: искажен образ диска базы данных: ВСТАВИТЬ В ЗНАЧЕНИЯ «schema_migrations» («версия») (‘20110425202452’)
Вот код для добавления столбцов:
class AddPhotoToItem < ActiveRecord::Migration
def self.up
add_column :items, :preview_photo_file_name, :string
add_column :items, :preview_photo_content_type, :string
add_column :items, :preview_photo_file_size, :integer
add_column :items, :thumbnail_photo_file_name, :string
add_column :items, :thumbnail_photo_content_type, :string
add_column :items, :thumbnail_photo_file_size, :integer
end
def self.down
remove_column :items, :preview_photo_file_name, :string
remove_column :items, :preview_photo_content_type, :string
remove_column :items, :preview_photo_file_size, :integer
remove_column :items, :thumbnail_photo_file_name, :string
remove_column :items, :thumbnail_photo_content_type, :string
remove_column :items, :thumbnail_photo_file_size, :integer
end
end
В чем проблема? Заранее спасибо!
Комментарии:
1. файл sqlite3 открыт другим процессом?
Ответ №1:
На вашем компьютере происходит повреждение базы данных if postfix is running
.
Вам не нужно удалять postfix, но остановите процесс, чтобы не произошло повреждение базы данных.
Для получения дополнительной информации обратитесь сюда.
Комментарии:
1. Привет, Джатин, спасибо за ответ. Я не нашел способа отключить постфикс, у вас есть какие-нибудь идеи, как я могу это сделать? Кроме того, почему это происходит? Все остальные миграции прошли отлично..