Definisi migration di laravel – Migrations versi mudahnya adalah version control database yang membantu developer untuk membuat database schema definition.
Jika kita sebelumnya pernah meminta db admin untuk menambahkan kolom baru di local database schema setelah ada perubahan dari kode program yang berkaitan dengan database, maka database migration adalah solusi untuk masalah tersebut.
Laravel Schema facade membantu membuat dan memanipulasi table di database di seluruh database sistem yang disupport oleh Laravel. Biasanya, migrations akan menggunakan facade untuk membuat dan memodifikasi table dan column yang ada di database
Cara penggunaan migration di laravel
Dari folder laravel project, cukup ketik php artisan make:migration {nama_file_migration}. Contoh :
fun fact: jika nama file migration kita diawali dengan create_ lalu diakhiri dengan _table, maka yang ditengah-tengah nama file migration adalah nama table yang akan dibuat secara otomatis di Schema file migration
Untuk aplikasi yang cukup kompleks, file migrations sebaiknya dibuat setelah design database sudah ada. Kenapa? Karena jika belum ada design database, khawatirnya database yang dibuat akan menjadi sulit untuk ditrace jika ada problem. Belum lagi jika ada penambahan atau pengurangan kolom. Dan tentunya aplikasi kompleks akan saling menghubungkan (baca:join) antara satu table dengan table lainnya, yang mana akan semakin sulit untuk di maintain tanpa ada design database.
Setelah file migrations dibuat, saatnya memasukkan nama-nama kolom beserta tipe kolomnya.
Untuk tipe kolom disesuaikan dengan data yang akan disimpan. Jika bertentuk text yang kurang dari 255 karakter, bisa menggunakan tipe string. Jika berbentuk text dengan jumlah karakter yang cukup banyak (misal diatas 1000 karakter) maka tipe longText bisa digunakan.
File migrations sudah dibuat, saatnya eksekusi file tersebut agar dapat diimplementasikan ke database dengan cara ketik php artisan migrate
Untuk mengecek status migration, bisa ketik php artisan migrate:status
Roll back migrations
Ada kalanya kita perlu memperbaiki file migrations yang baru saja dibuat, maka migrate:rollback akan sangat membantu. migrate:rollback akan mengembalikan file-file migration di sesi terakhir migration. Misal 5 menit yang lalu kita membuat 5 file migration dan sudah dimigrasi semua, maka saat menjalankan migrate:rollback 5 file migration tersebut yang akan di rollback.
Refresh Database
Dengan menggunakan php artisan migrate:refresh, maka semua file migration yang sudah dieksekusi akan di rollback lalu di eksekusi ulang. migrate:refresh sangat berguna untuk membuat ulang seluruh database dari file-file migrations yang sebelumnya sudah dibuat.
Demikian terkait migrations di laravel, jika ada update terbaru maka akan ditambahkan.
Ingin install composer di ubuntu? bisa cek artikelnya disini -> Cara Install Composer di Ubuntu Desktop
Pingback: Mengatasi laravel.log could not be opened - HADIDSAMA.COM
Comments are closed.