Я бы лично назвал это излишним.Это так называемое «мягкое кодирование», которое так же плохо, как и жесткое кодирование, когда вы заходите слишком далеко.Возможно, еще хуже, потому что его вредность более тонкая - и это довольно заманчиво для людей, которые много раз слышали о «пороках» жесткого кодирования.
Подумайте, что происходит, когда имя столбца возраста изменяется.У вас либо перечисление, значения которого больше не соответствуют именам столбцов (читай: код лжёт вам), либо вам нужно пройти и изменить каждую ссылку на COLUMN.AGE
, чтобы использовать вместо нее COLUMN.NEW_NAME_FOR_AGE
(читай: у вас естьне избавили себя от необходимости редактировать код позже, что, вероятно, является главной причиной, по которой вы это рассматриваете).И это даже не касается того, что произойдет, если структура изменится.Если столбец перемещается в другую таблицу или что-то еще, ваши перечисления просто не могут справиться, как есть.
Возможно, вы должны иметь имена столбцов как частные статические члены класса, если вы действительно этого не имеетелюбой контроль над БД, или использовать хранимую процедуру и позволить БД обрабатывать специфику имен столбцов.
О, и поговорить с тем, кто попросил вас кодировать базу данных, которая еще даже не разработана,Вы, по крайней мере, сможете установить некоторые вещи в камне.Если нет, то определенно пройдите по маршруту сохраненных процедур и дайте им побеспокоиться о том, чтобы имена столбцов были правильными, когда все меняется.