Materi Mata Kuliah

00 jam 00 menit 00 detik

    Materi belum tersedia

00 jam 00 menit 00 detik

    Materi belum tersedia

00 jam 00 menit 00 detik

    Materi belum tersedia

00 jam 10 menit 00 detik

00 jam 00 menit 00 detik

    Materi belum tersedia

00 jam 00 menit 00 detik

    Materi belum tersedia

00 jam 00 menit 00 detik

    Materi belum tersedia

00 jam 00 menit 00 detik

    Materi belum tersedia

00 jam 00 menit 00 detik

    Materi belum tersedia

Dasar Migration pada Laravel

Capaian Pembelajaran

Mahasiswa mampu memahami konsep migration pada Laravel, membuat migration menggunakan artisan, memahami struktur file migration, menjalankan migration, serta melakukan rollback migration pada database Laravel.


Pendahuluan

Dalam pengembangan aplikasi menggunakan Laravel, struktur database sering mengalami perubahan seperti:

  • Membuat tabel baru
  • Menambah kolom
  • Mengubah struktur tabel
  • Menghapus tabel

Laravel menyediakan fitur:

  • Migration

untuk membantu mengelola struktur database secara terstruktur dan terorganisir.


1. Pengertian Migration

A. Pengertian Migration

Migration adalah fitur Laravel yang digunakan untuk:

  • Mengelola struktur database menggunakan kode program.

Migration memungkinkan developer:

  • Membuat tabel
  • Mengubah tabel
  • Menghapus tabel

tanpa harus menulis SQL manual secara langsung di database.


B. Fungsi Migration

Migration digunakan untuk:

  • Version control database
  • Sinkronisasi database tim
  • Dokumentasi struktur database
  • Mempermudah deployment aplikasi

C. Konsep Migration

Migration bekerja seperti:

  • “Version control” pada database.

Setiap perubahan database dicatat dalam file migration.


D. Keuntungan Migration

Keuntungan Penjelasan
Struktur database terorganisir Semua perubahan tercatat
Mudah rollback Bisa dikembalikan
Kolaborasi tim lebih mudah Database sinkron
Tidak perlu SQL manual Lebih praktis

E. Lokasi File Migration

File migration berada pada folder:

 
database/migrations/
 

F. Contoh Migration Laravel

 
2026_05_12_000000_create_users_table.php
 

G. Fungsi Nama File Migration

Nama file migration berisi:

  • Timestamp
  • Nama migration

Tujuannya:

  • Mengatur urutan migration.

2. Membuat Migration dengan Artisan

A. Pengertian Artisan

Laravel Artisan digunakan untuk membuat migration secara otomatis.


B. Command Membuat Migration

Format:

 
php artisan make:migration nama_migration
 

C. Contoh Membuat Migration

 
php artisan make:migration create_mahasiswa_table
 

D. Hasil Migration

Laravel otomatis membuat file:

 
database/migrations/2026_05_12_xxxxxx_create_mahasiswa_table.php
 

E. Penamaan Migration

Laravel memiliki standar penamaan:

Penamaan Fungsi
create_table_name_table Membuat tabel
add_column_to_table Menambah kolom
remove_column_from_table Menghapus kolom

F. Membuat Migration Sekaligus Table

Command:

 
php artisan make:migration create_produk_table --create=produk
 

G. Membuat Migration Update Table

Command:

 
php artisan make:migration add_harga_to_produk_table --table=produk
 

H. Fungsi Migration Artisan

Digunakan untuk:

  • Membuat struktur database otomatis.

3. Struktur File Migration

A. Struktur Dasar Migration

Contoh file migration:

 
<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

return new class extends Migration
{
public function up(): void
{

}

public function down(): void
{

}
};
 

B. Fungsi Method up()

Method:

 
up()
 

digunakan untuk:

  • Menjalankan perubahan database.

Contoh:

  • Membuat tabel
  • Menambah kolom

C. Fungsi Method down()

Method:

 
down()
 

digunakan untuk:

  • Mengembalikan perubahan database.

Contoh:

  • Menghapus tabel
  • Menghapus kolom

D. Membuat Tabel pada Migration

Contoh:

 
public function up(): void
{
Schema::create('mahasiswa', function (Blueprint $table) {

$table->id();
$table->string('nama');
$table->string('jurusan');
$table->timestamps();

});
}
 

E. Penjelasan Blueprint

Syntax Fungsi
id() Primary key
string() VARCHAR
timestamps() created_at & updated_at

F. Menghapus Tabel

 
public function down(): void
{
Schema::dropIfExists('mahasiswa');
}
 

G. Fungsi Schema

 
Schema
 

digunakan untuk:

  • Mengelola struktur database.

H. Tipe Data Migration Laravel

Method Tipe Data
string() VARCHAR
text() TEXT
integer() INTEGER
boolean() BOOLEAN
date() DATE

4. Menjalankan Migration

A. Pengertian Menjalankan Migration

Migration dijalankan untuk:

  • Membuat tabel pada database.

B. Command Migration

 
php artisan migrate
 

C. Hasil Migration Berhasil

Jika berhasil:

 
Migrated: 2026_05_12_create_mahasiswa_table
 

D. Hasil pada Database

Tabel otomatis dibuat pada MySQL.


E. Tabel migrations

Laravel otomatis membuat tabel:

 
migrations
 

Digunakan untuk:

  • Mencatat migration yang sudah dijalankan.

F. Menjalankan Migration Tertentu

 
php artisan migrate --path=database/migrations/nama_file.php
 

G. Menjalankan Migration Fresh

 
php artisan migrate:fresh
 

Digunakan untuk:

  • Menghapus semua tabel lalu migrate ulang.

H. Menjalankan Seeder Setelah Migration

 
php artisan migrate --seed
 

5. Rollback Migration Laravel

A. Pengertian Rollback

Rollback digunakan untuk:

  • Membatalkan migration terakhir.

B. Command Rollback

 
php artisan migrate:rollback
 

C. Fungsi Rollback

Digunakan untuk:

  • Menghapus tabel terakhir
  • Membatalkan perubahan database

D. Rollback Beberapa Step

 
php artisan migrate:rollback --step=2
 

E. Reset Migration

 
php artisan migrate:reset
 

Digunakan untuk:

  • Membatalkan seluruh migration.

F. Refresh Migration

 
php artisan migrate:refresh
 

Digunakan untuk:

  • Rollback lalu migrate ulang.

G. Fresh Migration

 
php artisan migrate:fresh
 

Digunakan untuk:

  • Menghapus seluruh tabel lalu membuat ulang.

H. Perbedaan Rollback dan Fresh

Command Fungsi
rollback Membatalkan migration terakhir
refresh Rollback lalu migrate ulang
fresh Hapus semua tabel lalu migrate ulang

Praktikum

Praktikum 1 — Membuat Migration

Command:

 
php artisan make:migration create_mahasiswa_table
 

Praktikum 2 — Membuat Struktur Table

Isi migration:

 
Schema::create('mahasiswa', function (Blueprint $table) {

$table->id();
$table->string('nama');
$table->string('jurusan');
$table->timestamps();

});
 

Praktikum 3 — Menjalankan Migration

Command:

 
php artisan migrate
 

Praktikum 4 — Rollback Migration

Command:

 
php artisan migrate:rollback
 

Praktikum 5 — Refresh Migration

Command:

 
php artisan migrate:refresh
 

Tugas Praktikum

Tugas Individu

  1. Buat migration:
    • mahasiswa
    • dosen
    • mata_kuliah
  2. Gunakan:
    • string()
    • integer()
    • timestamps()
  3. Jalankan:
    • migrate
    • rollback
    • refresh
  4. Screenshot:
    • File migration
    • Hasil migrate
    • Struktur tabel database
  5. Jelaskan:
    • Pengertian migration
    • Fungsi method up()
    • Fungsi method down()
    • Fungsi rollback

Kesimpulan

Migration pada Laravel mempermudah pengelolaan struktur database secara terorganisir dan terstruktur. Dengan memahami cara membuat migration, menjalankan migration, serta melakukan rollback, mahasiswa dapat mengelola database aplikasi Laravel dengan lebih profesional dan efisien.

 
 
 


Report Error