Вы не можете судить о правильности дизайна базы данных, считая таблицы. Нет такой вещи, как нормальная форма "слишком много таблиц" или нормальная форма "недостаточно таблиц". Также нет такой вещи, как нормальная форма «слишком много столбцов» или нормальная форма «недостаточно столбцов».
В нынешнем виде сегодня , имея один столбец для каждого из передаточных чисел коробки передач, вы все равно можете получить 5NF. Это потому, что в нем нет нескольких столбцов, значения которых поступают из одного домена, и это проблема. Он имеет несколько столбцов, значения которых происходят из одного домена и имеют одинаковое значение , что является проблемой.
Очевидно, 8-я и 1-я передачи имеют разные значения. На самом деле, вы можете считать их взятыми из разных доменов. Я предполагаю, что 0,67 не является допустимым значением для 1-й передачи, а 4,85 не является допустимым значением для 8-й.
Когда они хранятся в разных столбцах,
- Легко применить ограничение, что каждая строка имеет значение для каждого из 8 передаточных чисел, и
- Ограничения на диапазон допустимых значений для каждого передаточного числа действительно просты. (Но вы должны учесть значения NULL для более поздних конструкций, имеющих только 5 или 6 передач, и это вызывает проблемы нормализации.)
Когда они хранятся в виде строк,
- труднее - возможно, невозможно - применить ограничение, согласно которому каждое транспортное средство имеет значение для каждого из 8 передаточных чисел, и
- ограничения на диапазон допустимых значений для каждого передаточного числа более сложны. (Особенно, когда вы позже приспосабливаетесь к конструкциям, которые имеют только 5 или 6 передач.)