Ada performa besar penalti untuk menggunakan ENUM
untuk operasi seperti:
-
Kueri daftar nilai yang diizinkan di
ENUM
, misalnya untuk mengisi menu tarik-turun. Anda harus menanyakan tipe data dariINFORMATION_SCHEMA
, dan mengurai daftar dari bidang BLOB yang dikembalikan. -
Ubah set nilai yang diizinkan. Ini membutuhkan
ALTER TABLE
pernyataan, yang mengunci tabel dan dapat melakukan restrukturisasi.
Saya bukan penggemar ENUM
MySQL . Saya lebih suka menggunakan tabel pencarian. Lihat juga jawaban saya untuk "Bagaimana cara menangani enumerasi tanpa bidang enum dalam database?
"