Столбец идентификатора базы данных или столбец кода - PullRequest
0 голосов
/ 08 июня 2018

Я работаю над проектом, в котором мне нужно реализовать некоторые новые функции.В процессе я должен спроектировать несколько таблиц и создать несколько редакторов для этих данных.У меня есть одна таблица для категорий и одна для типов.

На стороне клиента я должен создать несколько списков, используя эти типы, но каждый список должен использовать типы только из одной категории.Мне не нравится идея использовать PK в моем C #.Я предпочел бы создать имя столбца «Код» в таблице категорий и использовать его в своем коде C # при подготовке списков.

РЕДАКТИРОВАТЬ : я не имею в виду удаление PK (ябудет иметь столбец базового идентификатора int).Я имею в виду добавление еще одного столбца в категорию («Код»), чтобы использовать jsut в C # в качестве строковых констант вместо идентификаторов.

Это хорошая идея?

1 Ответ

0 голосов
/ 08 июня 2018

Если я понял ваш вопрос, я бы порекомендовал следующую структуру для ваших таблиц:

Table Category
    ID Int                     -- primary key
    Code Varchar(8)            -- Code value displayed to users
    Description Varchar(100)


Table Item
    ID Int                     -- primary key
    CategoryID Int             -- foreign key to Category
    Code Varchar(8)            -- Code value displayed to users
    Description Varchar(100)

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...