Миграции — это тип контроля версий для вашей базы данных. Они позволяют команде изменять схему базы данных и оставаться в курсе текущего состояния схемы. Миграции обычно выполняются в паре с построителем схем, чтобы упростить управление схемой вашего приложения.
С миграциями вам не нужно создавать таблицу в phpMyAdmin, вы можете сделать это в Laravel. Вот пример создания пользовательской таблицы:
class CreateUsersTable extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('users', function(Blueprint $table)
{
$table->increments('id'); // autoincrement id field
$table->string('name'); // string field
$table->string('lastname');
$table->string('title');
$table->string('email')->unique(); // unique string field
$table->string('password', 60); // string field with max 60 characters
$table->boolean('Status')->default(0); // string field with default value 0
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::drop('users');
}
}
В этом коде мы создаем таблицу с такими полями, как «имя», «фамилия»… мы сказали в нашем коде Laravel, что они строкового типа, когда миграция завершена, у нас есть полная таблица в базе данных с этими полями.
Запустите миграцию для создания таблицы
Чтобы создать миграцию, вы можете использовать команду make:migration в Artisan CLI (интерфейс командной строки artisan):
php artisan make:migration create_users_table
or
php artisan make:migration create_users_table --create=users
Выполнить миграцию для изменения таблицы
Когда вам нужно внести некоторые изменения в пример таблицы базы данных: добавить голосование за поле в пользовательскую таблицу, вы можете сделать это в своем коде Laravel, не касаясь кода SQL.
php artisan make:migration add_votes_to_users_table --table=users
Откатить последнюю операцию переноса
Если вы допустили ошибку и сделали что-то не так, вы всегда можете выполнить откат, чтобы вернуть базу данных в предыдущее состояние.
php artisan migrate:rollback
Отменить все переносы
php artisan migrate:reset
Отменить все переносы и запустить их снова
php artisan migrate:refresh
php artisan migrate:refresh --seed
Одним из лучших преимуществ миграции является создание базы данных без изменения кода SQL. Вы можете создать целую базу данных со связью в PHP-коде, а затем перенести ее в MySQL, PL/SQL, MSSQL или любую другую базу данных.
Также я рекомендую бесплатную фундаментальную серию Laravel 5, в эпизоде 7 вы можете узнать больше о миграции.
person
Adnan
schedule
13.05.2015