Dodawanie kolumny do tabeli bez utraty danych

Aby dodać lub zmodyfikować tabele z już istniejącymi kolumnami bez utraty danych wykonujemy poniższy kod w konsoli. Migracje powinniśmy nazwać tak, by jej nazwa mówiła nam co ona będzie robiła. W naszym przypadku głownie dodajemy slug do tabeli posts, wiec w nazwie użyje add_co_chce_dodać

php artisan make:migration add_slug_field_to_table --table=posts

Następni w nowo wygenerowanym pliku migration->_add_slug_field_to_table.php dodajemy to co chcemy dodać lub modyfikowac.

public function up()
{

Schema::table('posts', function (Blueprint $table) {
//dodajemy kolumnę slug po kolumnie title
$table->string('slug')->after('title');
//title zmieniamy na unikalny ciag znaków
$table->string('title')->unique()->change();
//a content zmieniamy z text na długi tekst
$table
->text('content')->longText('content')->change();
});
}

Na koniec wykonujemy

php artisan migrate

I wszystkie zmiany powinny zostać wprowadzone do naszej bazy danych