Penamaan Tabel yang Baik di Database: Plural atau Singular?

Bismillahirrohmaanirrohiim. Alhamdulillahi Robbil 'Alamiin. Allahumma sholli 'alaa Sayyidinaa Muhammad.

Akhir-akhir ini, saya sedang penasaran dengan penamaan tabel yang baik di database. Hal yang melatari rasa penasaran saya adalah perbedaan standar penamaan tabel di tempat saya bekerja, kebiasaan saya waktu kuliah hingga menjadi freelancer, serta buku Belajar Cepat Pemrograman Query dengan MySQL oleh R.H. Sianipar.

Kali ini, saya ingin membahas mengenai apakah penamaan plural (misalnya books) atau singular (misalnya book) yang baik.

Gambar 1. Ilustrasi Anda bahagia karena membicarakan penamaan tabel di database dengan rekan Anda.

Bagaimana Saya, Tempat Saya Bekerja, dan Buku yang Saya Baca Menggunakannya

Pertama-tama, Anda perlu mengetahui standar penamaan tabel saya, tempat saya bekerja, dan buku yang saya baca. Saya biasanya menggunakan nama tabel singular, tempat saya bekerja menggunakan penamaan singular, dan buku yang saya baca tersebut juga menggunakan penamaan tabel singular.

Seingat saya, saya baru pernah menamai tabel secara plural ketika saya mengerjakan proyek berbasis framework Laravel.

So, sebenarnya tidak ada hal yang aneh di antara kami. Saya sendiri sebenarnya tidak mempermasalahkan hal ini. Tentu saja tidak sebelum saya membaca referensi mengenai penamaan tabel yang baik.

Jadi, Saya Melakukan Kajian Terhadap Beberapa Pendapat

Awalnya, saya membaca artikel yang ditulis oleh founder Bootcamp Dumbways.id, Ega Wachid Radiegtya. Dalam artikelnya, sebenarnya dia tidak menyebutkan secara tersurat mengenai hal ini. Namun, dia sedikit menyinggunya dalam poin 1 artikel yang ditulisnya.

Dia menulis pernyataan seperti ini.

Misalkan kita ingin menamai table kita secara jamak, katakanlah “products”, nah bayangkan jika kita menggunakan bahasa Indonesia, maka akan menjadi “banyak_produk”. It suck right?

Di sini, saya menyimpulkan dia sebenarnya tidak masalah dengan singular atau plural. Dia lebih menekankan kepada "gunakanlah bahasa Inggris untuk penamaan tabel" yang mana itu merupakan inti dari poin 1 pada artikel yang ditulisnya.

Sebenarnya, berdasarkan komentarnya terhadap salah satu komentar di artikelnya tersebut, dia menuliskan tips-tips tersebut berdasarkan pengalamannya dalam penerapannya pada beberapa framework yang pernah digunakannya, misalnya Django, Laravel, Yii, dan lain sebagainya.

Saya sendiri baru pernah menggunakan Laravel dan Yii, meskipun yang paling mengena di pikiran saya adalah Laravel. Saya sendiri merasakan bahwa betapa Laravel menuntut developer untuk menggunakan nama tabel plural.

Kemudian, saya melanjutkan membaca beberapa pendapat yang lain.

Sehrope Sarkuni, founder JackDB, dalam artikelnya menyatakan bahwa dia menggunakan singular dalam penamaan tabelnya.

Dia memiliki beberapa alasan, antara lain karena penamaan singular itu konsisten, tidak ambigu, serta penerjemahannya ke bahasa pemrograman generasi keempat yang jelas.

Senada dengan Sehrope Sarkuni, ternyata Baron Schwartz, penulis utama buku High Performance MySQL, juga menyatakan gagasannya bahwa penamaan tabel secara singular lebih disarankannya.

Alasannya, penamaan tabel secara plural dapat meningkatkan kompleksitas. Selain itu, dia berpendapat bahwa bingung dalam menentukan nama plural (misalnya dari goose menjadi geese, moose menjadi tetap moose, dan cow menjadi cattle) juga buang-buang waktu.

Ada juga pendapat dari Jeffrey Edison yang sekarang bekerja sebagai Global Solutions Lead di Oracle Financial Services Software. Dia menuliskan bahwa di tempatnya bekerja, standar penamaan yang digunakan adalah singular.

Dia menyatakannya di artikel yang dia tulis pada tahun 2015, yang mana saat itu, berdasarkan akun LinkedIn-nya, dia masih belum bekerja di Oracle, melainkan di Tieto dan NoSide LLC. Entah yang dia maksud tempatnya bekerja itu saat di Tieto atau di NoSide LLC.

Dari pernyataan 3 orang tadi, semuanya menyatakan bahwa mereka menggunakan atau merekomendasikan penamaan tabel secara singular. Namun, apakah ada pihak yang merekomendasikan penggunaan nama plural (Selain dokumentasi Laravel dan kawan-kawan tentunya)?

Ternyata ada. Dia adalah Fabien Lassere, freelancer fullstack web developer dari Perancis. Sebenarnya, dia pernah menulis artikel dengan topik yang mirip dengan artikel yang sedang saya tulis ini. Dia juga menampilkan pendapat yang pro-singular dan proplural, meskipun dia tidak menyebut nama-nama orang yang pro-singular.

Dalam kesimpulan artikelnya, dia secara personal menggunakan penamaan plural. Dia berdasar pada tabel di database adalah representasi dari sekumpulan item. Maka dari itu, tabel harus dinamakan menggunakan kata plural karena tabel tersebut menyimpan beberapa salinan entitas.

Oke. Saya cukupkan pada 4 pendapat utama di atas. Tentu saja ada banyak pendapat lain di internet sana. Namun, jika saya pelajari lalu menuliskan semuanya di sini, rasanya kok tidak worth it. Lebih pantas saya jadikan jurnal ilmiah mungkin, ya.

Jadi, yang Manakah yang Baik?

Menurut saya secara pribadi, tidak ada yang lebih baik dari satunya. Kondisional saja, sih.

Namun, setelah membaca beberapa artikel tersebut dan melihat kenyataan bahwa beberapa framework modern menggunakan penamaan plural, saya lebih prefer ke penamaan plural. So, di proyek-proyek yang akan saya kerjakan ke depannya, saya akan menggunakan penamaan plural untuk nama tabel.

Ya. Mungkin ini sedikit di luar dugaan Anda ketika menduga saya akan berpendapat bahwa yang lebih baik adalah yang singular karena ada 3 pendapat orang yang menyatakan itu. Mind blown nggak, sih?

Tetapi, saya tetap tidak bisa menampik kenyataan bahwa standar yang saya gunakan di tempat kerja saya adalah penamaan singular. So, ketika mengerjakan proyek di tempat kerja saya sekarang, saya tetap akan menggunakan singular.

So, opini saya pribadi adalah gunakan standar penamaan di tempat Anda bekerja agar apa yang Anda kerjakan bisa mudah dipahami oleh rekan kerja Anda. Namun, jika Anda mengerjakan proyek pribadi atau Anda sebagai pembuat standarnya, gunakanlah penamaan plural karena semakin ke sini, dukungan framework terhadap penamaan plural terhadap tabel semakin terasa.

Semoga bermanfaat.

Wallahul muwafiq ilaa aqwaamith thooriq.

Photo by Helena Lopes from Pexels

Komentar

Postingan populer dari blog ini

Cara Mengatasi "Access denied for user 'root'@'localhost' (mysqli_real_connect(): (HY000/1698))" di Ubuntu 20.04 LTS

Update dari Composer 1 ke Composer 2 di Ubuntu 20.04

Cara Mengatasi "Login without a password is forbidden by configuration (see AllowNoPassword)" di Ubuntu 20.04 LTS