我是一个ASP.NET开发人员,我真的不做这样的数据库的东西。但我在Codeplex上的开源项目需要为项目设置一个数据库模式。
因此,从这里和那里阅读,我已经设法做了以下工作。
作为一个新的数据库模式设计者,我希望一些对这个主题有更好的想法的人帮助我找出这个设计的任何问题。
大部分的关系我想都是不言自明的,但我还是会一一记下。
两个键之间的 用户资料 和 问题 之间的关系。用户ID 和 IssueCreatedBy 和 问题关闭
谢谢你
这看起来相当不错,IMO你的主要问题是在命名的一致性& 简单性上。
Id
,你应该对所有的表使用它。你可以简化一个表名。
UserProfile
=> User
以及字段名 :
Issue_Title
=>也可以简化字段名: =>。Title
Issue_Description
=>也可以简化字段名:=>。Description
Issue_Priority_Type
=> Type
(或者更不容易混淆。Name
)等。
不过我会对外键使用更精确的命名方式
CreatedBy
=> CreatedByUserId
ClosedBy
=> ClosedByUserId
HTH.