什么是最好的数据库模型,利用该deppending选择的用户类型的用户注册过程中的不同数据,某些领域将需要与否。数据库建模的问题 - 需要deppending用户类型
例: 用户A类要求:名称,电子邮件,出生日期和性别 用户B类要求:公司名称,联系人,电子邮件,N.员工
我觉得最黎民是创建一个包含所有这些字段的表,并使它们允许NULL。
你们会提出什么建议?
什么是最好的数据库模型,利用该deppending选择的用户类型的用户注册过程中的不同数据,某些领域将需要与否。数据库建模的问题 - 需要deppending用户类型
例: 用户A类要求:名称,电子邮件,出生日期和性别 用户B类要求:公司名称,联系人,电子邮件,N.员工
我觉得最黎民是创建一个包含所有这些字段的表,并使它们允许NULL。
你们会提出什么建议?
我以前做过同样的事情。只要您存储客户类型,就不难获得正确的细节。
您可以考虑2个表,如果有将是一个表,它是比其他的大得多使用视图来联合他们,虽然对客户类型的指数会做同样的事情。 “非常相似”我的意思是快速访问一种类型的数据。
关于把所有的数据在一个表中,你不必做任何连接来获取数据,这与书写的查询和易用性的速度帮助的好处。
您可以创建一个基地“用户”表中持有任何公共字段,以及其他表是挂关闭用户与FK到基础User.ID.如果没有公共字段,那么只需要有不同的表格,而不是一个带有大量空字段的表格。
为了保持一致性,最好为用户提供一个“主表”,其中唯一的字段将是一些用于这两种类型(例如,ID,SSN或其他)的用户共同的唯一用户标识符。
然后由你如何表示的专业化。
一种选择是具有在该表中表示的类型的第二字段,然后两个表与细节,每一个类型。在查询时,如果用户的类型为A,则只能确保在TYPE_A表中查找用户的详细信息。
第二种选择是不具有该字段,并依据事实在特定的表格中有记录来表示类型,但这是相当危险的。