Hay una gran penalización de rendimiento para usar ENUM
para operaciones como:
-
Consulta la lista de valores permitidos en el
ENUM
, por ejemplo, para completar un menú desplegable. Tienes que consultar el tipo de datos deINFORMATION_SCHEMA
y analice la lista de un campo BLOB devuelto. -
Modificar el conjunto de valores permitidos. Requiere una
ALTER TABLE
instrucción, que bloquea la tabla y puede hacer una reestructuración.
No soy fanático de ENUM
de MySQL . Prefiero usar tablas de búsqueda. Consulte también mi respuesta a "¿Cómo manejar enumeraciones sin campos de enumeración en una base de datos?
"