Laravel Database Programming

laravel database tutorial, laravel eloquent, laravel migration, laravel db::query, eloquent orm, laravel model example, laravel fetch data
Laravel Database Programming

Pada umumnya setiap PHP framework digunakan untuk permrograman berbasis database begitu pula dengan framework laravel, untuk membuat aplikasi berbasis database laravel sendiri sudah menyediakan library - library khusus, yang dapat memanjakan para programmer, pada artikel berikut kita akan membahasa bagaimana cara :
  1. Membuat Koneksi Database
  2. Metode Pembuatan Database
  3. Migrasi Database
  4. Pembuatan Skema Database
  5. Database Seeding 

 Membuat Koneksi Database

Framework Laravel mendukung koneksi terhadap beberapa DBMS diantaranya seperti SQLite,MySQL,pgSQL,SQLsrv namun pada artikel berikut akan fokus terhadap database MySQL yang sudah cukup familiar bagi kalangan siswa,mahasiswa atau umum sehingga diharapkan tidak terlalu sulit untuk mengikuti pembahasan. 

Untuk melakukan koneksi database pada Framework Laravel kita dapat membuka file pada folder config/database.php, pada file tersebut terdapat konfigurasi database untuk beberapa database yang sudah disebutkan diatas. berikut adalah contoh koneksi kepada DBMS MySQL :



Fungsi env(“DB_HOST”, “127.0.0.1”), berguna untuk melakukan penyimpanan string konfigurasi yang dapat dibuka pada file .env yang berada pada project Framework Laravel yang telah dibuat. untuk koneksi kepada MySQL akan seperti berikut :

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=


Tulisan yang ditebalkan adalah teks yang perlu kita ubah untuk disesuaikan dengan database yang akan dibuat, tidak perlu tanda kutip dalam penamaan database,username dan password. misalkan kita akan mengubah nya menjadi database 'kampus' dengan database default 'root' dan password kosong, maka akan menjadi seperti berikut :


DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=kampus
DB_USERNAME=root
DB_PASSWORD=


 Metode Pembuatan Database

Pada Framework Laravel kita dapat memilih metode pengerjaan database, terdapat dua cara dalam memebuat database  yaitu :
  1. Database dahulu
  2. Coding dahulu
 
Database Dahulu
 
Metode yang biasa dibuat khususnya bagi pemula adalah Database dahulu, yaitu pembuatan database menggunakan sebuah Tools seperti phpmyadmin,mysql front,sqlyog dan yang lainnya. setelah selesai membuat database kemudian dilanjutkan pembuatan aplikasi. tidak ada yang salah jika kita menggunakan metode tersebut, namun bagi sebagian programmer akan merepotkan ketika melakukan pembuatan aplikasi karena harus bekerja dengan beberapa tools. yaitu editor tempat membuat Coding dan Tools untuk pembuatan database.

Coding Dahulu

Framework Laravel menyediakan sebuah library khusus untuk membuat database menggunakan coding terlebih dahulu, dengan menggunakan metode ini para programmer membuat database dalam sebuah Tools saja, sehingga tidak perlu lagi repot lagi membuka tools lain selain itu proses update database misalkan ketika mau menambah/mengubah kolong lebih mudah karena kita hanya perlu mengupdate script yang dinamakan dengan migrasi database.

Migrasi Database

Telah disinggung diatas bahwa migrasi digunakan untuk menambah/mengubah database atau secara jelasnya dengan melakukan migarasi database kita dapat mengelola struktur database yang dibuat. untuk melakukan migrasi database kita perlu membuat sebuah file migrasi, file ini dapat dibuat dengan tools pada framework laravel yaitu artisan, berikut adalah contoh pembuatan file migrasi menggunakan artisan. buka cmd anda kemudian masuk kedalam folder project kita, syarat artisan dapat berjalan lokasi PHP harus disetting terlebih dahulu pada Environtment Variabel (diasumsikan ini sudah diseting) pada windows. setelah masuk dalam direktori ketik perintah berikut :

php artisan make:migration create_mahasiswa_table

contoh diatas project laravel dinamai dengan kampus kemudian membuat file migrasi dengan nama create_mahasiswa_table.  file yang sudah berhasil dibuat berada di database/migrations/2019_08_09_074406_create_mahasiswa_table.php 

Laravel Database Programming

Terdapat dua fungsi pada class tersebut yaitu function up() dan function down()
  1. Function up(), digunakan untuk menuliskan perintah pembuatan atau pengubahan struktur database. 
  2. Method down(), digunakan untuk menuliskan kode yang membatalkan apa yang telah dieksekusi di method up().
Pada method up(), pertama telah dibuatkan sebuah tabel dengan nama mahasiswa, hal itu dilakukan melalui static method dari Schema, yaitu Schema::create(“mahasiswa”), setelah itu kita definisikan kolom apa saja yang akan dibuat, bawaan dari perintah make:migration akan membuat dua kolom yaitu : 
  1. id yang merupakan key dan autoIncrement,
  2. timestamps yang akan membuat field created_at dan updated_at pada tabel mahasiswa. 
Method down(), pada perintah Schema::dropIfExists(“mahasiswa”) digunakan untuk
mengecek jika tabel mahasiswa ada di database, jika ada  perintah drop, atau hapus tabel mahasiswa akan dijalanakan terlebih dahulu. Dengan dibuat nya file Migrasi maka database kita belum berubah, sebelum dilakukan eksekusi. untuk mengeksekusi perintah tersebut gunakan perintah :

php artisan migrate

Laravel Database Programming
Jika migrasi berhasil ditambahkan sebuah tabel akan terbuat di database yang kita tuju sesuai denga setting pada config/database atau pada file .env.

Laravel Database Programming

Eksekusi perintah berikut pada cmd :

php artisan make:migration:rollback

perintah diatas digunakan untuk menghapus tabel yang sudah dilakukasi migration, modifikasi file create_mahasiswa_table.php untuk menambahkan beberapa kolom menjadi seperti berikut :

Laravel Database Programming

Eksekusi kembali perintah php artisan migrate maka akan bertambah beberapa kolom pada tabel mahasiswa.

Database Seeding

database seeding digunakan untuk mengisi data pada tabel yang sudah dibuat di database menggunakan script pada php, laravel menyediakan fitur ini secara khusus untuk membuat file seeding gunakan perintah berikut :

php artisan make:seeder MahasiswaTableSeeder

modifikasi MahasiswaTableSeeder pada folder database/seeds/MahasiswaTableSeeder.php menjadi seperti berikut :

Laravel Database Programming
untuk mengeksekusi perintah diatas kita perlu menambahkan perintah berikut kepada file database/seeds/DatabaseSeeder.php tambahkan baris berikut :

Laravel Database Programming
eksekusi perintah seed diatas pada cmd dengan perintah :

php artisan db:seed

jika berhasil data akan bertambah pada tabel mahasiswa. demikian penjelasan mengenai Laravel Database Programming kali ini.
Terimakasih.