sql >> Databáze >  >> RDS >> PostgreSQL

heroku run rake db:migrate error

Vypadá to, že platí následující:

  • 20120525005302_create_users.rb se pokusí vytvořit users tabulky ve vaší databázi.
  • 20120611000411_devise_create_users.rb se také pokusí vytvořit users tabulky v databázi.
  • Vaše databáze již má users tabulka v něm, takže migrace selže při druhé migraci.

Chcete-li získat users tabulka ve vaší databázi, aby správně odpovídala 20120611000411_devise_create_users.rb migraci, můžete udělat jednu ze dvou věcí:

  1. Vraťte (nebo zrušte) databázi a poté znovu spusťte migraci. (Můžete smazat 20120525005302_create_users.rb pokud je prázdný.)
  2. Upravte svůj 20120611000411_devise_create_users.rb migrace za účelem odstranění všech stávajících users než uděláte cokoliv jiného.
  3. Upravte svůj 20120611000411_devise_create_users.rb migrace takto:
    • Místo vytváření users tabulky, upravte stávající tabulku.
    • Přidávejte a upravujte komponenty databáze tak, aby odpovídaly

Obecně platí, že pokud je vaše aplikace v „kojeneckém stavu“, pak opětovné vytvoření databáze bývá rychlým způsobem, jak vytvořit počáteční strukturu aplikace. Pokud však již máte důležitá data ve svých users tabulku, budete ji chtít zachovat a pokračovat úpravou 20120611000411_devise_create_users.rb migraci za účelem nedestruktivní změny databáze.

Odkazy



  1. WITH CHECK ADD CONSTRAINT následované CHECK CONSTRAINT vs. ADD CONSTRAINT

  2. načíst data spinner ze sqlite a mysql

  3. MySQL a PHP - vložte NULL místo prázdného řetězce

  4. VYTVOŘIT postup Oracle