Migration atau database migration, adalah salah satu fitur yang cukup memudahkan kita ketika ada pembuatan atau perubahan pada tabel-tabel di database aplikasi kita. Entah itu penambahan kolom, indexs dan lain sebagainya. Dengan database migration, kita dapat membuat tabel-tabel tanpa harus membuka aplikasi administrasi database, seperti phpmyadmin, navicat, sqlyog, dan lainnya. Menggunakan fitur database migration pada laravel terbilang cukup mudah, lagi dan lagi kita akan dipermudah dengan command line tool bawaan laravel, yaitu artisan. Sebelum menggunakan migration, kita harus membuat dulu database mysql nya, silahkan gunakan phpmyadmin, sqlyog atau yang lainnya untuk membuat database baru. Disini akan kita namakan databasenya dengan “latihan”. Jika sudah terbuat, silahkan edit file database.phpyang terletak di namaproyek/ app/config/ lalu ganti baris database pada bagian mysql dengan nama yang barusan kita buat, lihat gambar.

Kalau sudah selanjutnya kita buatkan file migrationnya. Sebagai contoh mari kita buat migrations untuk membuat table Anggota dengan struktur sebagaiberikut;

Buka terminal, masuk ke folder nama-proyek , jalankan perintah berikut:
php artisan migrate : make buat_table_anggota

Perintah diatas akan menghasilkan sebuah file, misalnya dengan nama dan lokasi namaproyek/app/database/migrations/2014_-03_26_033903 buat_table_anggota.php.
Ubah isian file tersebut menjadi:
<?php
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class BuatTableAnggota extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('anggota', function(Blueprint $table)
{
$table->increments('id');
$table->string('nama');
$table->string('alamat');
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::drop('anggota');
}
}
Pada fungsi up diatas laravel akan membuat tabel anggota. Sedangkan, pada fungsi down, laravel akan menghapus tabel anggota.
Berikutnya silahkan jalankan perintah ini di terminal untuk melakukan migrasi :
php artisan migrate

Cek pada database Anda, akan terdapat tabel migrations dan anggota. Tabel migrations berfungsi untuk mencatat migrasi database yang telah kita lakukan.
Tabel anggota adalah tabel yang didefinisikan di file migrasi yang telah kita buat.

Artikel ini dbuat oleh trainer kursus php laravel
Lev Yasin
Instruktur Web Programming Mataweb
Sangat tertarik dengan dunia Pemrograman Web & Mobile, saat ini fokus pada bagian Backend Web Developer, menggunakan PHP sebagai bahasa pemrograman utama, biasanya saya menggunakan Laravel.