在 mysql 上存储用户的最佳实践是什么?


What is the best practice to store users on mysql?

我像LinkedIn一样将工作配置文件存储在我的数据库中。您可以注册为候选人或公司,但现在我只有一张桌子

user_tb

其中user_tb.user_type是用于识别候选用户与成员/访客与公司的标记

想象一下,如果我希望用户能够添加该公司自己的员工。

员工应该存放在哪里?我会将它们存储在主user_tb中,对吗?那么公司呢?如果我将员工存储在同一user_tb他们的电子邮件不能为空......如果没有电子邮件,如何填写电子邮件?

应该与员工user_tb单独的表吗?

我会为公司和用户创建一个单独的表,然后在用户表上为他们的公司 ID 设置一列以将它们链接在一起。 当您尝试将所有内容塞进一张桌子时,它会变得太混乱。

如果用户表需要电子邮件,

并且您希望公司有一个添加员工的位置,则可以要求他们向员工发送电子邮件,或者为员工创建一个不需要电子邮件的单独表,但可以在注册新用户之前进行检查,以查看他们是否已存在于"员工"表中。