Saya mulai menggunakan ORM yang direkomendasikan oleh kerangka yang saya pilih, dan meskipun saya menyukai ide lapisan tambahan yang disediakan ORM, saya mulai menyadari apa artinya ini. Itu berarti saya tidak lagi bekerja dengan database saya (mysql) dan semua fitur spesifik mysql hilang, keluar jendela, seolah-olah tidak ada.
Gagasan yang dimiliki ORM adalah bahwa ia mencoba membantu saya dengan membuat semua database agnostik. Ini kedengarannya hebat, tetapi sering kali ada alasan mengapa saya memilih sistem basis data tertentu. Tetapi dengan pergi rute agnostik database, ORM mengambil common denominator terendah, yang berarti saya berakhir dengan set fitur terkecil (yang didukung oleh semua database).
Bagaimana jika saya tahu bahwa untuk jangka panjang saya tidak akan mengganti basis data yang mendasarinya? Mengapa tidak mengakses fitur khusus basis data juga?