【问题标题】:What is the best practice to store users on mysql?将用户存储在 mysql 上的最佳做法是什么?
【发布时间】:2015-03-11 04:49:29
【问题描述】:

我将工作资料存储在我的数据库中,有点像 Linkedin。 您可以注册为候选人或公司,但现在我只有一张桌子

user_tb

其中user_tb.user_type 是用于识别候选用户、会员/访客和公司的标签

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

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

应该是 user_tb 与员工不同的表吗?

【问题讨论】:

  • 雇主和用户有什么区别?
  • 电子邮件必须是必填字段吗?如果是这样,您从哪里获取数据?如果用户正在填写注册表单,请在此处填写所需的电子邮件地址。
  • 我知道我的问题很笼统,但是感谢你们,现在我有了更好的理解

标签: php mysql


【解决方案1】:

我会为公司和用户创建一个单独的表,然后在用户表上有一列用于他们的公司 ID 将它们链接在一起。当你试图把所有东西都塞进一张桌子时,它变得太乱了。

如果 users 表需要电子邮件,并且您希望公司有一个地方可以添加员工,则可以要求他们给员工电子邮件,或者为不需要电子邮件的员工创建单独的表,但是可以在注册新用户之前检查他们是否已经存在于“员工”表中。

【讨论】:

  • 这个问题提供的关于员工和公司关系性质的信息太少。如果我们想同时表达员工的工作经历和/或同时属于多家公司,单列可能还不够。
  • @Andrea,谢谢。我认为它验证了我的想法。我想我还是需要添加员工电子邮件
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-11-28
  • 2017-04-21
  • 1970-01-01
  • 2010-12-16
  • 2011-03-01
  • 2011-07-14
  • 1970-01-01
相关资源
最近更新 更多