Assalamu’alaikum
Warrahmatullahi Wabarakatu
Hay
teman – teman, apa kabar semuanya? Maaf sebelumnya aku jarang banget post di
blog tentang pemrograman web. Kali ini aku bakal bahas tentang Database
Migration di laravel. Nah bagi kalian web development gak awam kan sama yang
namanya database migration ini. Untuk mempersingkat waktu langsung aja ke
pembahasan nya sekaligus mempraktekan bagi yang awam dengan pembahasan ini.
Langsung aja Cekidot!!
PERSIAPAN (1)
Cari Path PHP anda
Buka
windows explorer, cari folder PHP di folder XAMPP anda, kemudian copy alamat
path tersebut pada address bar
Lokasi folder PHP disesuaikan dengan lokasi anda menginstall
XAMPP/PHP nya
PERSIAPAN (2)
Konfigurasi PATH PHP
- Buka Windows
Explorer, Klik kanan My Computer / This PC, pilih Properties
- Pilih menu Advance
system settings
- Klik Environment
Variables
- Pada tab System
Variables, cari Variable Path
- Klik Edit
pada Variable tsb.
- Klik
New, lalu paste alamat path PHP anda
- Klik OK
PERSIAPAN (3)
Cek Konfigurasi PATH PHP
- Buka CMD,
ketik php –v
- Konfigurasi PATH berhasil apabila muncul tampilan seperti gambar dibawah ini
DATABASE MIGRATION (1)
- Buka CMD,
masuk ke folder laravel menggunakan cd
Buat database
Buka
phpMyAdmin, buat database baru dengan nama db_laravel
Edit .env
Buka
file .env pada root folder project laravel anda, konfigurasi koneksi database
di file tersebut
DATABASE MIGRATION (2)
Masuk ke Folder Laravel melalui CMD
Buka
CMD, masuk ke folder laravel menggunakan cd
DATABASE MIGRATION (3)
Buat tabel siswa
Ketik
perintah php artisan make:migration create_t_murid
Secara
otomatis akan muncul file baru pada folder database/migrations
Buka
file tersebut
DATABASE MIGRATION (4)
function up
Fungsi yang dijalankan ketika database di migrate,
biasanya menjalankan perintah create table, ataupun alter table
function down
Fungsi
yang dijalankan ketika database di rollback, biasanya kebalikan dari fungsi
yang dikerjakan pada function up
DATABASE MIGRATION (5)
Edit file create_t_murid
Membuat
table t_murid dengan field nis bertipe data integer, nama_lengkap dengan
tipe data string (varchar) dan panjang 100 karakter, dan jenis kelamin dengan
tipe data string (varchar) dan panjang 1 karakter
DATABASE MIGRATION (6)
Jalankan perintah migrate
Kembali
ke cmd, jalankan perintah php artisan migrate
DATABASE MIGRATION (7)
Periksa database di phpMyAdmin
Jika
berhasil maka akan muncul tabel baru di database
ADD FIELD WITH MIGRATION (1)
Buat migration untuk alter
Misalnya,
pada tabel t_murid perlu ditambahkan field golongan darah.
Buat
migration untuk menambah field golongan darah, jalankan perintah ini di cmd
php
artisan make:migration add_goldar_t_murid
ADD FIELD WITH MIGRATION (2)
Edit file add_goldar_t_murid
ADD FIELD WITH MIGRATION (3)
Jalankan perintah migrate
Kembali
ke cmd, jalankan perintah php artisan migrate
Periksa database di phpMyAdmin
ROLLBACK MIGRATION (1)
Jalankan perintah rollback migration
Misalnya,
ada kesahalan penulisan pada file migrasi anda, tetapi migrasi sudah dilakukan.
Anda ingin melakukan perubahan file yang sudah berhasil di migrasi.
Sebelumnya anda harus melakukan rollback terlebih dahulu sebelum melakukan
editing file migrasi tersebut.
Jalankan perintah php artisan migrate:rollback
ROLLBACK MIGRATION (2)
Edit file add_goldar_t_murid
ROLLBACK MIGRATION (3)
Jalankan perintah migrate
Kembali
ke cmd, jalankan perintah php artisan migrate
Periksa database di phpMyAdmin
ROLLBACK MIGRATION (4)
Rollback dijalankan hanya ketika anda sudah berhasil melakukan
migrasi
Pastikan
anda melakukan rollback terlebih dahulu sebelum melakukan editing file migrasi
untuk terhindar dari error.
Rollback digunakan untuk melihat histori perubahan sebelumnya
Pada
konsepnya, rollback digunakan untuk melihat perubahan apa yang terjadi sebelum
file-file migrasi yang baru dimigrasikan. Pada prakteknya, untuk tetap menjaga
histori database gunakan fitur alter apabila terjadi kesalahan yang terjadi
setelah anda melakukan migrasi.
ALTER TABLE WITH MIGRATION (1)
Buat migration untuk alter
Misalnya,
pada tabel t_murid terjadi perubahan nama field jenis_kelamin menjadi jenkel
Buat
migration untuk mengubah field jenis_kelamin
php
artisan make:migration change_jenkel_t_murid
ALTER TABLE WITH MIGRATION (2)
Edit file change_jenkel_t_siswa
ALTER TABLE WITH MIGRATION (3)
Install package doctrine/dbal
Sesuai
instruksi yang ada pada dokumentasi Laravel, untuk menjalankan migrasi
renameColumn diperlukan library doctrine/dbal. Lakukan instalasi package
tersebut menggunakan composer dengan menjalankan perintah dibawah ini pada root
folder laravel anda (diperlukan koneksi internet)
composer
require doctrine/dbal
ALTER TABLE WITH MIGRATION (4)
Jalankan perintah migrate
php
artisan migrate
NOTE :
COMPOSER HARUS SUDAH TERINSTAL DAN JIKA SUDAH SIMPAN DI PATH
ALTER TABLE WITH MIGRATION (5)
Periksa database di phpMyAdmin
Jika
berhasil maka field akan berubah
DAN SELESAIIIII!!!
STUDI KASUS
Nah
kali ini aku di kasih studi kasus mengenai pembelajaran Database Migration ini.
Di adakannya studi kasus ini untuk mengetahui seberapa jauh kita memahami materi ini. Mari kita simak dan jika yang mau
mempraktekan silahkan bisa diikuti.
STUDI KASUS 1
Membuat berbagai macam kolom
Buatlah
migrasi baru untuk membuat tabel t_percobaan. Cobalah buat minimal 15
field yang berbeda pada tabel tersebut
DATABASE MIGRATION (1)
Buat tabel percobaan1
Ketik
perintah php artisan make:migration create_t_percobaan1
Secara
otomatis akan muncul file baru pada folder database/migrations
Buka
file tersebut
DATABASE MIGRATION (2)
Edit file create_t_percobaan1
DATABASE MIGRATION (3)
Jalankan perintah migrate
Kembali
ke cmd, jalankan perintah php artisan migrate
DATABASE MIGRATION (4)
Periksa database di phpMyAdmin
Jika
berhasil maka akan muncul tabel baru di database
STUDI KASUS 2
Membuat migrasi data
- Buatlah
tabel t_kelas1 dengan
field nama_kelas, jurusan
- Buatlah
perubahan tabel t_kelas1 dengan
menambahkan field lokasi_ruangan dengan
tipe data string dan panjang 100 karakter
- Buatlah
perubahan tabel t_kelas1 dengan mengganti panjangnya menjadi 50
karakter
- Buatlah
perubahan tabel t_kelas1
dengan menambahkan field nama_walkel
dengan tipe data string dan panjang 50 karakter
- Buatlah
perubahan tabel t_kelas1 dengan
mengubah nama field nama_walkel menjadi
nama_wali_kelas
DATABASE MIGRATION (1)
Buat tabel kelas1
Ketik
perintah php artisan make:migration create_t_kelas1
Secara
otomatis akan muncul file baru pada folder database/migrations
Buka
file tersebut
DATABASE MIGRATION (2)
Edit file create_t_kelas1
DATABASE MIGRATION (3)
Jalankan perintah migrate
Kembali
ke cmd, jalankan perintah php artisan migrate
DATABASE MIGRATION (4)
Periksa database di phpMyAdmin
Jika
berhasil maka akan muncul tabel baru di database
1. Buatlah
perubahan tabel t_kelas1 dengan
menambahkan field lokasi_ruangan1 dengan
tipe data string dan panjang 100 karakter
ADD FIELD WITH MIGRATION (1)
Buat migration untuk alter
Pada tabel t_kelas1 perlu ditambahkan
field lokasi_ruangan1.
Buat migration untuk menambah field
lokasi ruangan, jalankan perintah ini di cmd
php artisan make:migration
add_lokasi_ruangan_t_kelas1
ADD FIELD WITH MIGRATION (2)
Edit file
add_goldar_ruangan_t_siswa1
ADD FIELD WITH MIGRATION (3)
Jalankan perintah migrate
Kembali ke cmd, jalankan perintah php
artisan migrate
Periksa database di phpMyAdmin
2 .
Buatlah perubahan tabel t_kelas1 dengan mengganti panjangnya
menjadi 50 karakter
ADD FIELD WITH MIGRATION (1)
Jalankan perintah rollback migration
Jalankan perintah php artisan
migrate:rollback
ROLLBACK MIGRATION (2)
Edit file add_lokasi_ruangan_t_siswa1
ROLLBACK MIGRATION (3)
Kembali ke cmd, jalankan perintah php artisan migrate
Periksa database di phpMyAdmin
3. Buatlah perubahan tabel t_kelas1 dengan menambahkan field nama_walkel dengan tipe data string
dan panjang 50 karakter
ADD FIELD WITH MIGRATION (1)
php artisan make:migration add_nama_walkel_t_kelas1
ADD FIELD WITH MIGRATION (2)
Edit file add_goldar_t_siswa
ADD FIELD WITH MIGRATION (3)
Jalankan perintah migrate
Kembali ke cmd, jalankan perintah php artisan migrate
Periksa database di phpMyAdmin
4. Buatlah perubahan tabel t_kelas1 dengan mengubah nama field nama_walkel menjadi nama_wali_kelas
ALTER TABLE WITH MIGRATION (1)
Buat migration untuk alter
php artisan make:migration
change_nama_wali_kelas_t_kelas1
ALTER TABLE WITH MIGRATION (2)
Edit file
change_nama_wali_kelas_t_kelas1
ALTER TABLE WITH MIGRATION (3)
Jalankan perintah migrate
php artisan migrate
ALTER TABLE WITH MIGRATION (5)
Periksa database di phpMyAdmin
Jika berhasil maka field akan berubah
Nah,
itu yang sudah kita pelajari hari ini. Mudah kan? Mudah lah dan bisa untuk di
coba lagi berulang kali supaya terbiasa untuk membuat program. Jika ada
kesulitan ataupun ingin bertanya – tanya bisa langsung hubungi kontak yang
tertera di blog. Sampai jumpa lagi di pembahasan selanjutnya.
Wassalamualaikum
Warrahmatullahi Wabarakatu
Tidak ada komentar:
Posting Komentar