Мы разрабатываем схемы баз данных в MySQL с учетом меняющихся требований.
Все начинается с простого проекта:
fact
таблица:
|id|featureid|featurevalue|
|----|----|----|
|1|1000|42|
dimension
таблица:
|featureid|featurename|
|---------|-----------|
|1000|awesome_feature|
все работает нормально до сегодняшнего дня, когда требуется новое требование для хранения строки для featurevalue
в базе данных.
iпонять основы схемы таблицы и то, что столбец featurevalue
НЕ может быть одновременно bigint(20)
и varchar(255)
.
Так что я думаю о чем-то вроде добавления нового столбца с именем featurevalue_string
вfact
таблица.Однако я не совсем уверен в этом решении, так как есть только 1 или 2 объекта со строковыми значениями, а остальная часть должна быть по-прежнему int.
Вопрос здесь в том, как принять такое изменение втребование в нашей базе данных дизайна?