Признак антипаттерна здесь легко распознать: в таблицах для первичного ключа слишком часто используется обобщенное имя id. Практически не существует причин, почему это имя столбца следует предпочесть другому имени, более описательному.
На присутствие антипаттерна могут также указывать следующие ситуации.
• «Я не думаю, что мне необходим первичный ключ в этой таблице».
Разработчик, который так утверждает, путает термин «первичный ключ» с псевдоключом. В каждой таблице должно существовать ограничение первичного ключа, чтобы предотвратить дублирование строк и однозначно идентифицировать отдельные строки. Возможно, возникнет желание вместо этого использовать естественный ключ или составной ключ.
• «Как я умудрился получить дублированные ассоциации «множество-множество»?»
Таблица пересечений для отношения «множество-множество» должна объявлять ограничение первичного ключа или, по крайней мере, ограничение уникального ключа по множеству столбцов внешних ключей.
• «Я читал, что по теории баз данных следует перемешать значения в таблицу поиска и ссылаться на них по идентификаторам. Но я не хочу делать это, так как потребуется выполнять операцию объединения каждый раз, когда мне будут нужны фактические значения».
Это распространенное неправильное понимание части теории проектирования баз данных, которая называется нормализацией и у которой в действительности нет ничего общего с псевдоключами. Дополнительные сведения по этому вопросу см. в приложении А.
Опубликовал vovan666
June 18 2013 12:25:39 ·
0 Комментариев ·
4051 Прочтений ·
• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •
Комментарии
Нет комментариев.
Добавить комментарий
Рейтинги
Рейтинг доступен только для пользователей.
Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.
Нет данных для оценки.
Гость
Вы не зарегистрированны? Нажмите здесь для регистрации.