Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
Re: Уточнения 04.11.03 14:31 Число просмотров: 1037
Автор: Den <Denis> Статус: The Elderman
|
Нормализация - это конечно хорошо... Но иногда есть однотипные справочные данные, которые удобнее хранить в одной таблице и при этом не будет нарушение какой-либо формы нормализации, а всего-навсего будет иное, более удобное представление данных.
Пример.
Старый вариант: Имеем две таблицы - Город и Улица. Пояснять их структуру я думаю не обязательно.
Новый вариант: Имеем две таблицы - Area (некоторая абстракция) и Area_type.
Структура таблицы Area:
Area_id
Node_id (pointer to node Area_id)
Area_type_id
Area_name
-----
Primary key Area_id
Unique key Node_id, Area_type_id, Area_name (clustered)
etc.
Структура таблицы Area_type
Area_type_id
Area_type_name
-----
Primary key Area_type_id (clustered)
---------------------------------------
В случае добавления новых унификаторов как район или регион, в 'старом варианте' пришлось бы создавать новые таблицы, корректировать внешние ключи таблиц старых таблиц и перелопачивать все представления, основанные на этих справочных данных.
В 'новом варианте' достаточно добавить новую запись в таблицу 'Area_type' и всего навсего перепривязать данные к нодам. Указанный кластерный индекс должен обеспечить быстрый доступ и хранение данных для движка SQL сервера.
|
|
|