2017-06-15 4 views
1

Gemäß Laravel doc, Um die letzte Migration Operation Rollback, können Sie den Rollback-Befehl verwenden. Dieser Befehl rollt das letzte „Batch“ von Migrationen zurück, die Dateien von mehreren Quellen Migration können gehören:Bestimmte Migration in Laravel entfernen

php artisan migrate:rollback 

Sie können, indem sie den Schritt Option zum Rollback-Befehl eine begrenzte Anzahl von Migrationen Rollback. Zum Beispiel wird der folgende Befehl die letzten fünf Migrationen Rollback:

php artisan migrate:rollback --step=5 

migrieren: Reset-Befehl rollen zurück Migrationen die alle Ihre Anwendung:

php artisan migrate:reset 

Sie here überprüfen können. Aber ich muss die spezifische Migrationsdatei entfernen. Wie pro mein Projekt mit 30-40 Migrationsdatei. Ich möchte eine der Migrationsdateien und deren Modell entfernen. Gibt es eine Möglichkeit, dies zu tun oder manuell zu tun?

+2

Mögliche Duplikat [Rollback eine spezifische Migration in Laravel] (https://stackoverflow.com/questions/30287896/rollback-one-specific-migration-in-laravel) –

+2

Was geteilt @GovindSamrow ist das, was Sie suchen . Aber meiner Meinung nach ist das Löschen einer Migration niemals eine gute Idee. Alternativ sollten Sie eine weitere Migration schreiben, die Ihre db-Struktur entsprechend Ihren neuen Anforderungen ändert. Wir müssen uns daran erinnern, dass Migrationen eine versionsgesteuerte Datenbank bereitstellen. Löschen, obwohl möglich, ist nur gegen das Konzept der Migrationen. Das müssen wir vor allem bei größeren Projekten wie dem Ihren vermeiden. –

Antwort

0

Wenn Sie die Migrationsdatei einfach entfernen (löschen) und die Migrationen erneut ausführen (migrate:refresh), werden die Datenbanktabellen neu erstellt (ohne die Tabelle, die in der Migrationsdatei definiert ist, die Sie gelöscht haben).

+0

Ja, und alle vorhandenen Daten gehen verloren ... – sisve

+0

Die ursprüngliche Frage hat nichts über das Bewahren von Daten gesagt. Wenn dies benötigt wird, müsste ein mysqldump und ein Import manuell durchgeführt werden – CJG