数据库设计:separeted modell(person + user)如何将人员添加到数据库

时间:2015-09-16 14:46:10

标签: php mysql database

我必须使用以下数据库结构构建一个Web应用程序: 我有草图中的结构。我必须分开 人与人和用户因为有人 将永远不会有用户帐户,只是由管理员添加简单 到网站db。

有一个注册到网站的申请表。 必须填写人员字段和用户字段

如果管理员将该人员添加到数据库(没有用户信息),并且此人希望稍后由他/她自己注册如何处理此案例?

他/她尝试注册,但填写人员字段将复制数据。在这种情况下,人员字段已存在。 你有什么想法吗?

UPDATE1: 感谢您的回答我已经知道如何将数据字段存储在表格中。但是当管理员注册人员数据并且该人员注册他/她自己时,我不知道如何处理该案例 PS:请原谅我,但我现在还没有建模工具。

Person

User

1 个答案:

答案 0 :(得分:0)

重要的是要注意,同时可以是用户用户也可以不是即可。 (例如,将处理数据库自动维护的用户角色)

一切都与您的业务模式的结构有关。

用户的所有数据放在中,尽可能保持轻量级用户。 (姓名,数据流,电子邮件等

用户中,只需将 外键 可以为空的添加到表记录中 id 密码 lastlogin 等等。)。

当表单由用户填写时,首先在中添加记录,如果填写了与用户对应的数据,则抓取您刚刚添加的 ID ,并将其用作填充用户中的外键的数据。

如果人员数据已经在数据库中,请通知用户并询问他使用旧数据或更新数据...始终考虑安全性和隐私问题。 (这个用户可能不是他声称的那个......也许你应该让他确认他的电子邮件,就像很多新闻通讯一样)