Pengenalan Migration
Apa itu Migration?
Migration adalah fitur di Laravel yang memungkinkan Anda untuk mengelola skema database dengan cara yang version-controlled. Migration berfungsi sebagai kontrol versi untuk database Anda, memungkinkan Anda untuk membuat perubahan skema database dengan aman dan sederhana.
Kenapa Menggunakan Migration?
- Kontrol Versi: Seperti halnya dengan proyek kode, Anda dapat melacak perubahan pada skema database.
- Tim Kerja: Migration memudahkan kolaborasi antara tim, karena setiap anggota tim dapat melihat dan menerapkan perubahan yang sama.
- Rollback: Anda dapat dengan mudah membatalkan perubahan dengan rollback.
Cara Membuat Migration
Untuk membuat migration baru, Anda dapat menggunakan artisan command di terminal:
php artisan make:migration create_posts_table
Perintah di atas akan membuat file migration baru di dalam direktori database/migrations
. Nama file akan memiliki timestamp yang unik.
Struktur File Migration
Setelah migration dibuat, Anda akan melihat struktur dasar file berikut:
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class CreatePostsTable extends Migration
{
/**
* Jalankan migrasi.
*
* @return void
*/
public function up()
{
Schema::create('posts', function (Blueprint $table) {
$table->id();
$table->string('title');
$table->text('body');
$table->timestamps();
});
}
/**
* Hapus migrasi.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('posts');
}
}
Penjelasan
up
: Method ini digunakan untuk mendefinisikan apa yang akan dilakukan ketika migration dijalankan, seperti membuat tabel dan kolom.down
: Method ini digunakan untuk membatalkan perubahan yang dilakukan di methodup
, seperti menghapus tabel.
Menjalankan Migration
Setelah Anda membuat migration, Anda dapat menjalankannya dengan perintah:
php artisan migrate
Perintah ini akan mengeksekusi semua migration yang belum dijalankan dan memperbarui skema database Anda.
Rollback Migration
Jika Anda ingin membatalkan migration yang baru saja dilakukan, Anda bisa menggunakan perintah:
php artisan migrate:rollback
Ini akan memanggil method down
dari migration terbaru yang dijalankan.
Kesimpulan
Migration adalah alat yang sangat berguna dalam Laravel untuk mengelola skema database Anda. Dengan menggunakan migration, Anda dapat memastikan bahwa semua anggota tim bekerja dengan penyimpanan data yang konsisten dan terkendali.
Referensi
Untuk informasi lebih lanjut, Anda bisa merujuk ke Dokumentasi Resmi Laravel Migration.