Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
adem
Зарегистрирован: 03.05.2004 Сообщения: 6
|
Добавлено: Пн Май 03 2004 20:15 Заголовок сообщения: Проверка корректности нормализации |
|
|
Помогите пожалуйста ламеру с нормализацией. Допустим, я привел данные к 3 нормальной форме, но как бы мне проверить, что я не сделал ошибки? Мне предложили такой способ: если две таблицы связаны друг с другом двумя связями, то плохи дела. Возникают вопросы:
1. Какая нормальная форма нарушена и почему?
2. Как-то это нелогично получается: если, к примеру, у человека есть адрес регистрации и адрес фактического проживания, то мне эти адреса в разные таблицы выносить? В одну нельзя: получится двойная связь между таблицами "Личные данные" и "Адреса".
3. Как еще проверить корректность нормализации?
Заранее спасибо. |
|
Вернуться к началу |
|
![](templates/subSilver/images/spacer.gif) |
Demiurge
Зарегистрирован: 05.04.2004 Сообщения: 33 Откуда: Казахстан, Астана
|
Добавлено: Вт Май 04 2004 09:22 Заголовок сообщения: |
|
|
Экскурс в теорию:
Цель нормализации - избавить реляционную таблицу от зависимостей, не связанных с первичными ключами.
Доводы в пользу нормализации -
а. Обеспечение целостности.
б. Создание формальной модели, наименее зависимой от специфики приложения.
в. Снижение требований к объему памяти (полная нормализация должна привести к исключению избыточности данных).
1 Нор.Ф - Отсутствие повторяющихся групп (Данные в каждой ячейке должны быть атомарны)
2 Нор.Ф - Отсутствие частичной зависимости (Каждый неключевой столбец зависит от полного первичного ключа)
3 Нор.Ф - Отсутствие транзитивной зависимости (Ни один неключевой столбец не должен зависеть от другого неключевого столбца).
есть еше 4-я и 5-ая но они применяются редко.
Отсюда следствие, где ты видишь запрет на две и более связи связи между таблицами
Если у ты адрес считаешь атомарным (неделимым) и это не ключевое поле, а связь идет по идентификаторам записей (первичным ключам), то никакого нарушения нет, но хотя адрес всегда делится на города, улицы, дома и т.д. и у тебя в адресе будет нарушение 1НФ _________________ С наилучшими пожеланиями
Demiurge |
|
Вернуться к началу |
|
![](templates/subSilver/images/spacer.gif) |
|