Larapak
Ctrl K

Manajemen Migrasi Database

Migrasi adalah kontrol versi untuk struktur database Anda. Melalui migrasi, tim pengembang dapat memodifikasi skema tabel secara aman, konsisten, dan mudah dilacak.

File skema migrasi disimpan di dalam folder lumbung/migrasi/.

1. Membuat File Migrasi Baru

Gunakan perintah CLI untuk menghasilkan cetak biru migrasi baru:

# Dialek Ngapak (Rekomendasi)
ngapakin gawe:migrasi gawe_tabel_produk

# Atau menggunakan alias standar
ngapakin make:migration gawe_tabel_produk

Perintah ini akan membuat file migrasi terstempel waktu, misalnya lumbung/migrasi/2026_10_31_000001_gawe_tabel_produk.ngpk:

# lumbung/migrasi/2026_10_31_000001_gawe_tabel_produk.ngpk

gawe munggah(skema)
    skema.gawe("produk", gawe(tabel)
        tabel.id()
        tabel.teks("nama", 150)
        tabel.angka("harga")
        tabel.teks("deskripsi").bisa_kosong()
        tabel.waktu()
    rampung)
rampung

gawe mudhun(skema)
    skema.bubar("produk")
rampung

2. Menjalankan Perintah Migrasi

Menjalankan Seluruh Migrasi Tertunda

# Dialek Ngapak Asli
ngapakin migrasi
# Atau: ngapakin munggah

# Alias standar
ngapakin migrate

Memeriksa Status Migrasi

Lihat status eksekusi seluruh migrasi dalam format tabel ringkas:

# Dialek Ngapak
ngapakin migrasi:status

# Alias standar
ngapakin migrate:status

Mengulang Database Bersih (Fresh Reset) & Seeding

Menghapus seluruh tabel dan menjalankan kembali migrasi dari awal (opsional menyertakan --seed untuk langsung mengisi data awal):

# Dialek Ngapak Asli
ngapakin migrasi:anyar
ngapakin migrasi:anyar --seed

# Alias standar
ngapakin migrate:fresh
ngapakin migrate:fresh --seed

Membatalkan (Rollback) Migrasi Terakhir

# Dialek Ngapak Asli
ngapakin mudhun

# Alias standar
ngapakin rollback

Dukungan Multi-Database Driver

Sistem migrasi Larapak secara cerdas menerjemahkan tipe kolom ke dialek database yang aktif pada DB_DRIVER (SQLite, MySQL, PostgreSQL, atau MSSQL) tanpa perlu mengubah kode migrasi Anda.