2013-05-31 5 views
0

новых рельсам здесь, и экспериментируют с помощью файла дб \ seeds.rb и такиеRails - грабли БД: сброс не клиринговые мою базу данных

Во-первых, я хочу, чтобы очистить все данные в моей базе данных, используя rake db:reset но это не работает!

Вот мой выход

 
C:\Sites\sportproject>rake db:reset 
Couldn't drop db/development.sqlite3 : # 
db/development.sqlite3 already exists 
-- create_table("sports", {:force=>true}) 
    -> 0.0640s 
-- create_table("teams", {:force=>true}) 
    -> 0.0340s 
-- add_index("teams", ["sport_id"], {:name=>"index_teams_on_sport_id"}) 
    -> 0.0160s 
-- initialize_schema_migrations_table() 
    -> 0.0000s 
-- assume_migrated_upto_version(20130531012951, ["C:/Sites/sportproject/db/migra 
te"]) 
    -> 0.0000s 

Затем я войти в мою консоль с rails console и типа Sport.all (Sport это имя одного из моих моделей), и это показывает, есть еще данные!

Что я делаю неправильно?

+1

Дубликат http://stackoverflow.com/ вопросы/10290557/bundle-exec-rake-dbreset-command-raise-cannt-drop-db-development-sqlite3 –

+0

Спасибо. Мне кажется, это так. – Ricky

ответ

1

Я нашел ответ в ссылке Патрика.

Это потому, что я нахожусь в окнах, поскольку база данных, возможно, используется другим процессом, поэтому сообщение «Разрешено разрешение». Мне просто нужно было убедиться, что никакие другие процессы не использовали базу данных.

0

У меня была та же проблема. Причина в том, что я запускал rake db: reset на моем IRB или консоли. Вместо этого я выхожу из консоли и снова запускаю код, и это сработало. Возможно, Илл работает для вас тоже.

1

Если вы используете Linux и PostgreSQL вы можете сделать

sudo service postgresql restart 

, а затем

rake db:reset 

Я думаю, что с MySQL является

sudo service mysql restart 
Смежные вопросы