Artikel tentang utak-atik database ini akan mencoba mengulas beberapa topik yang berkaitan dengan bagaimana bekerja mengelola basis data di Laravel. Ada beberapa bahasan terkait, seperti migrasi, factory, seeder, multi basis data, dan sebagainya. Namun sebelumnya, kita mulai dulu dari pengaturan basis data.
Laravel menggunakan dotENV untuk settingan umumnya. Coba buka file .env pada direktori dasar (root directory). Jika Anda menggunakan basis data mysql (saat ini Laravel mendukung penggungaan basis data MySQL, termasuk Maria DB, Postgre, SQLite, dan SQL Server) , yang perlu Anda atur adalah di bagian DB_DATABASE (nama basis datanya apa), DB_USERNAME (username basis data), dan DB_PASSWORD (password dari username tadi).
Pastikan bahwa Anda sudah membuat basis data yang Anda definisikan pada file dotEnv. Anda dapat menggunakan Adminer seperti kami singgung di artikel "Senjata Andalan Programmer Belakode." Setelah itu, kita baru benar-benar bisa melakukan utak-atik basis data di Laravel.
Migrasi
Migrasi dalam konteks framework PHP itu ibarat kendali versi (versioning control) basis data yang digunakan. Dengan menggunakan migrasi basis data, kita tidak perlu lagi backup database kemudian restore lagi di komputer lain jika hanya ingin menyalin basis data. Denga migrasi pula kita dapat memastikan bahwa basis data yang kita gunakan di komputer satu memiliki struktur yang sama dengan basis data di komputer lain.Pertama, untuk membuat migrasi, gunakan perintah artisan make:migration seperti contoh berikut:
php artisan make:migration buat_tabel_buku --create=books
Pada contoh di atas, kita membuat file migrasi yang akan terbentuk pada foder database/migrations. Parameter
--create=books
mengindikasikan nama tabel yang dibuat adalah books
.Selanjutnya untuk melakukan migrasi, ketik perintah berikut
php artisan migrate
Jika kita ingin me-reset basis data serta sekaligus menjalankan ulang migrasi dapat digunakan perintah berikut:
php artisan migrate:refresh
Seed
Seed dalam konteks migrasi berarti kita membuat beberapa baris pada tabel-tabel yang sudah dibuat. Secara default, Laravel sudah menyediakan di folder database/seeds dengan nama file DatabaseSeeder.php. Namun, jika Anda ingin membuat file seeder sendiri, ketikkan perintah dengan contoh:php artisan make:seeder BooksTableSeeder
Sebagai contoh, isinya dapat dibuat seperti berikut ini:
Selanjutnya, untuk menjalankan seed dapat digunakan contoh seperti berikut:
php artisan db:seed
atau
php artisan db:seed --class=UsersTableSeeder
Demikian, semoga bermanfaat!
Referensi:
https://laravel.com/docs/5.5/migrations
Tidak ada komentar:
Posting Komentar