Saya telah menjelajahi kesedihan SQL dari beberapa CMS yang terkenal, termasuk Drupal 7, Wordpress (beberapa versi yang sangat lama), dan beberapa aplikasi khusus berdasarkan Python.
Semua dump ini berisi data dengan flag string bukan integer. Misalnya, status posting ini diwakili sebagai published
, closed
atau inherit
bukan 1
, 2
atau 3
.
Saya memiliki pengalaman yang sangat terbatas dalam mendesain database dan saya tidak pernah melewati SQL sederhana, tetapi saya selalu diajari bahwa saya harus menggunakan numeric / flag integer untuk data seperti ini. Sudah jelas bahwa tinyint
mengkonsumsi jauh lebih sedikit ruang dalam database daripada, misalnya varchar(9)
,.
Jadi apa yang saya lewatkan? Bukankah ini pemborosan penyimpanan data dan redundansi data? Bukankah menjelajah, mencari, dan mengindeks akan sedikit lebih cepat jika kolom ini menggunakan bilangan bulat bukan string?
char
s? Bagaimana tidak efisien!" sudah ketinggalan zaman dibandingkan dengan 2015.