2016-05-23 12 views
3

Ich habe eine funktionierende Laravel App, ich musste ein Model aktualisieren und eine neue Spalte zur Datenbank hinzufügen. Um dies zu tun, habe ich den folgenden Code in die Datenbank/Migration/Table.php Datei:Gibt es eine Möglichkeit, die Daten beim Aktualisieren einer Datenbanktabelle mit Laravel 5 zu speichern?

Schema::table('client', function (Blueprint $table) { 
     $table->string('newColumn'); 
}); 

Wenn ich versuche, die Datenbank (mit php artisan migrate) ich die Meldung „Nichts zu migrieren“ erhalten zu aktualisieren. Ich bemerkte, dass die einzige Möglichkeit, diese Änderung anzuwenden, php artisan migrate:refresh ist oder zurückgesetzt wird, aber beide Befehle löschen jede Zeile in der Datenbank.

Gibt es trotzdem eine Aktualisierung meiner Datenbankspalten, ohne alles fallen zu lassen?

+1

Haben Sie eine Migrationstabelle? Und haben Sie Ihre Migration mit 'php artisan make: migration add_newColumn_to_client' erstellt? –

+0

Nein, ich habe die Datenbankmigrationstabelle mit dem Befehl make erstellt, aber nicht, um die Spalte hinzuzufügen, also das Problem. Ich habe das neue Feld in der Migrationsdatei hinzugefügt. Vielen Dank! – Bruno

+1

Gut, froh, dass es so einfach war! –

Antwort

3

Die Komplettlösung Der Maniac wäre beschrieben:

  • die neue Spalte erstellen mit: php artisan make:migration add_newColumn_to_client.
  • Fügen Sie den folgenden Code in die neu erstellte Datei (date_add_newColumn_to_client):

    public function up() 
    { 
        Schema::table('client', function (Blueprint $table) { 
         $table->string('newColumn'); 
        }); 
    } 
    
  • Lauf php artisan migrate

0

Wenn Sie nur eine Spalte hinzufügen, werden [s] können Sie Daten exportieren Führen Sie migrate mit vollständigen INSERT-Anweisungen aus: Aktualisieren Sie die Daten und importieren Sie sie erneut. Für MySQL:

mysqldump -u {USER} -p {DATABASE} --no-create-db --no-create-info --complete-insert > yourdata.sql 
artisan migrate:refresh 
mysql -u {USER} -p {DATABASE} < yourdata.sql 
Verwandte Themen