Saya akan membahas apa perbedaan dari Eloquent dan query Builder dalam laravel. di Laravel ada 2 cara untuk bisa berinteraksi dengan Database yaitu dengan Eloquent dan Query Builder, nah apa bedanya ? perbedaannya pasti ada entah dari kecepatan , cara sintak , atau yang lain lain. mungkin ini bisa menjadi pertimbangan untuk teman teman apakah akan memakai Eloquent atau Query Builder ? atau kedua duanya di pakai ? bisa saja keduanya di pakai secara bersamaan. oke ini perbedaannya :

Eloquent

Eloquent ORM pada Laravel menyediakan implementasi Active Record yang berarti bahwa setiap model yang kita buat dalam struktur MVC kamu sesuai dengan tabel dalam database kita. Misalkan, jika saya membuat model dengan nama ‘Post’, maka model tersebut akan sesuai dengan table ‘posts’ pada database. Jadi, sayadapat mengakses data dalam tabel ‘posts’ sebagai berikut.

Query Builder

Seperti namanya, Query Builder pada Laravel menyediakan antarmuka untuk membuat dan menjalankanquery dalam database. Query Builder menggunakan PDO parameter binding untuk untuk melindungi aplikasi kita dari serangan injeksi SQL jadi kita tidak perlu lagi melakukan filter string sebagai binding. Contoh query dari Query Builder adalah sebagai berikut :

Berikut pengertian sedikit dari Eloquent dan Query Builder, mungkin sampai sini perbedaannya dari segi sintak, bagaimana dari segi kecepatan ?

Eloquent ORM (Execution time : 1.41 s, Queries Executed : 1000)

 Query Builder (Execution time : 938 ms, Queries Executed : 1000)

Mungkin dari segi Speed atau kecepatan dari Query Builder sendiri bisa lebih unggul dari Eloquent. perbedaannya hampir 0.5 detik.

Perbandingan Fungsional

Sebenarnya Eloquent ORM adalah extensi dari Query Builder, jadi kita bisa menggunakan syntax Query Builder didalam Eloquent. Sebaliknya, kita tidak bisa mengakses syntax dari Eloquent jika kita menggunakan Query Builder. Contohnya dari Eloquent adalah sebagai berikut :

Kesimpulan

Mungkin keduanya baik , jika kita menggunakan eloquent maka dari segi sintak akan lebih sederhana dan untuk masalah kecepatan lebih lama dari pada Query Builder. begitupun Query Builder sebaliknya. jadi baik Eloquent atau query builder keduanya baik, hanya teman teman bisa menyesuaikan dengan kebutuhan masing masing