假设我有一个用户表和一个UserProfile表,它们已经分离。这两张表是1:1的关系。用户表只包含电子邮件和密码等数据,而UserProfile包含名字、姓氏、电话号码等数据。
像Projects(针对用户的项目(或Ratings(用户的评级(这样的未来表与UserProfile表或实际Account表(user(的比率为1:N,这更有意义吗?
谢谢你的提示。
users
表应该有一个唯一的id来标识整个数据库中的用户。一般来说,这将是一个整数,因为它们对索引来说效率更高。
对于您的数据模型,您将对所有引用用户的表使用此user_id
。这包括userProfiles
。在该表中,它既是主键又是外键——除非这是一个具有版本生效日期和结束日期的类型2表。
注意:我倾向于将所有敏感数据放在userProfiles
中,包括电子邮件。加密的密码不需要去那里。这样,您可以更好地控制对PII("个人身份信息"(的访问。