Проектирование базы данных для системы отслеживания ошибок в SQL
Я разработчик ASP.NET, и я действительно не делаю такие вещи базы данных. Но для моего проекта с открытым исходным кодом на Codeplex мне необходимо настроить схему базы данных для проекта.
Таким образом, читая здесь и там, мне удалось сделать следующее.
Будучи новичком в разработке схемы базы данных, я хотел, чтобы кто-то еще, у которого была лучшая идея по этой теме, помог мне выявить любые проблемы с этим проектом.
Я думаю, что большинство отношений самоочевидны, но все же я буду записывать каждый из них.
Два ключа между UserProfile и Issues предназначены для отношений между UserId и IssueCreatedBy и IssueClosedBy.
Спасибо
1 ответ
Это выглядит довольно хорошо, IMO, ваша главная проблема заключается в согласованности имен / слишком сложных именах.
- Если каждый идентификатор таблицы
Id
, вы должны использовать его для всех таблиц. - Будьте последовательны с единственным / множественным числом в именах таблиц. Я склонен предпочитать единственное число.
Вы можете упростить имя таблицы:
UserProfile
=>User
А также имена полей:
Issue_Title
=>Title
Issue_Description
=>Description
Issue_Priority_Type
=>Type
(или даже менее запутанно:Name
)
и т.п.
Однако я бы использовал более точное именование для внешних ключей
CreatedBy
=>CreatedByUserId
ClosedBy
=>ClosedByUserId
НТН.