我在考虑OOP和DB模型中的用户和个人关系。 人是使用该应用程序的人,例如网上商店应用程序的买主。 要使用该应用程序,必须是可以登录和注销的应用程序用户。 我们说我有这个:
Person (id, firstname, givenname, address, phone)
User (id, e-mail, username, password)
如何通过关联连接这两个实体?
用户是否应该有person_id:User (id, e-mail, username, password, PERSON_ID)
或者Person应该有user_id:Person (id, firstname, givenname, address, phone, USER_ID)
请告诉我,我是否走错了方向。
(我会使用PHP和laravel但这对于这个问题并不那么重要。)
答案 0 :(得分:0)
这取决于数据的性质。
您是否需要让用户和个人成为独立的实体?如果您有一些不是人的用户(例如,系统用户,cron用户等),那么Person包含用户ID。如果您不关心这一点(即所有用户都是人,期间),我会创建一个包含所有数据的表,这样更简单。
我无法想到我希望用户包含人员ID的情况。