2011-01-24 2 views
7

Я работаю над веб-приложением Ruby on Rails 3 с использованием sqlite3. Я тестировал свое приложение на лету, создавая и уничтожая вещи в базе данных, иногда через действия new и edit, а иногда и через консоль Rails.Пустая моя база данных Sqlite3 в RoR

Я заинтересован в том, чтобы полностью очистить мою базу данных и оставить только пустые таблицы. Как я могу это достичь? Я работаю с командой, поэтому меня интересуют два ответа: 1) Как я могу освободить базу данных только мной? 2) Как я могу (если возможно, пуст) это другими (некоторые из которых не используют sqlite3, а MySql)? (мы все работаем над одним и тем же проектом через репозиторий SVN)

ответ

0

Я обнаружил, что, удалив deployment.sqlite3 файл из папки db и вставив команду rake db:migrate в командной строке, он решает эту проблему для всей моей команды, работающей над sqlite3.

0

Насколько я знаю, в sqlite нет управления USER GRANT, поэтому трудно контролировать доступ.

Вы можете защитить базу данных только по доступу к файлам.

Если вы хотите использовать пустую базу данных для целей тестирования. Создайте его один раз и скопируйте файл где-нибудь. и используйте копию этого файла непосредственно перед тестированием.

+0

Я хочу очистить основную базу данных ... – Nayish

18

Чтобы восстановить базы данных, вы можете запустить:

rake db:schema:load 

пересоздаст вашу базу данных из файла schema.rb (поддерживается вашей миграции). Это дополнительно защитит вас от миграции, которая позже может завершиться неудачей из-за изменений кода.

Ваша база данных разработчиков должна отличаться от вашей среды - если вам нужны определенные данные, добавьте ее в файл seed.rb. Не делите базу данных dev, так как вы быстро попадете в ситуации, когда другие изменения делают вашу версию несовместимой.

+1

Это не сработало для меня, однако, что описано в http://rubyunrails.blogspot.se/2010/12/clear-sqlite-database.html. –

2

Скачать sqlitebrower здесь http://sqlitebrowser.org/

Установите его, запустить его, нажмите открытую базу данных (слева вверху), чтобы locationOfYourRailsApp/дб/development.sqlite3

Затем перейти на вкладку просмотра данных, то вы можете добавить или удалить данные.

Смежные вопросы