Cita: Lo ideal seria tener el campo tal y como lo dices pero es una adaptación para una aplicación antigua y cada campo (año, mes y día) está en una variable de tipo entero.
Eso lo hubieses podido resover usando las funciones de YEAR(), MONTH() y DAY(), y manejar el problema de la aplicación por medio de las consultas y no forzar el modelo de datos.
Eventualmente, si se llega a reemplazar la aplicación el modelo de la base resultará ineficiente (ya lo es al tener los datos de esa forma).