Единственный столбец / таблица первичного ключа только для ссылочной целостности? - PullRequest
2 голосов
/ 15 сентября 2010

Возможно, я ошибаюсь, но я работаю над дизайном базы данных для одного из моих проектов.

У меня есть объект со столбцом классификации, который группирует объекты в удобные для пользователя категории.Эти классификации являются предопределенными и неизменяемыми для пользователя (по крайней мере, это текущий дизайн).

Я пытаюсь решить, должна ли я иметь таблицу EntityClassification, которая содержит просто столбец «Id» в качестве основногоключ без какой-либо другой информации, чтобы иметь принудительную связь между Entity: Classification -> EntityClassification: Id.

Я не планирую иметь столбец имя / описание в EntityClassification, так как моя текущая мысль, что яВам нужно будет поддерживать локализацию этих предопределенных имен, что будет сделано с помощью статической таблицы строк, такой как файлы ресурсов, загруженные на клиент в зависимости от их страны / языка.На самом деле нет никаких других данных, связанных с этой EntityClassfication, которые я хотел бы, и таблица кажется, что это может быть излишним?

Это обычная / рекомендуемая практика для такого типа проблемы?Мы используем SQL Server 2008 и у нас нет типа данных enum для базы данных, который, похоже, действительно является тем, чего я пытаюсь достичь.

Ответы [ 2 ]

3 голосов
/ 15 сентября 2010

У вас должна быть таблица с именем и описанием не только для отображения конечного пользователя, но и для внутренней документации, поэтому, когда пользователи говорят: «Мой запрос, основанный на этой классификации, не работает!»кто-то, нанятый в будущем, будет знать, о каком удостоверении личности он говорит.

1 голос
/ 15 сентября 2010

Вы хотите убедиться, что значения в Entity:Classification ограничены вашим предварительно определенным списком? Если это так, проверка ограничения может быть то, что вам нужно.

Такие ограничения не так гибки, как внешние ключи: чтобы изменить проверенные значения, мы должны отбросить и воссоздать ограничение, но затем вы говорите, что нет планов изменить значения, чтобы это не имело значения.

...