繁体   English   中英

MYSQL:我应该为具有共同和不同字段的2种类型的用户使用2个表吗?

[英]MYSQL: should i use 2 tables for 2 types of user with common and different field?

我有2种类型的用户1.员工。 2.员工朋友。

两个用户都有相同的字段。
1.名字
2.中间名
3.姓
4.手机号码
5.电话号码
6.城市地址
7.电子邮件(用作登录名)
8.密码
9.注册日期
10.更新帐户日期

并且员工朋友用户没有此字段
1.员工编号
2.公司名称。
3.公司分公司
4.位置

他们将使用相同的登录表单。

编辑版本(感谢nawfal和Patrick James McDougle)

if it is an employees_friend) 第一个表(用户)应包含字段1-10(第一个列表)和一个新字段fk_employees(第二个表的外键,如果为employee_friend,则为

第二个表(员工)应包含字段1-4(第二个列表)

我以同样的方式思考面向对象的编程。 如果员工是EXTENDS用户,则员工应该是具有更多信息的用户。 我会有两个桌子。

Users (可能包含添加ID字段的公共字段)和Employees (带有4个额外的员工字段,以及一个引用用户表中唯一标识符的字段)。

有关我提出的建议的更多信息,请参见: http : //www.agiledata.org/essays/mappingObjects.html#MappingInheritance

我建议使用上述字段创建2个单独的表,分别作为user和user_friends。

现在使用以下查询创建一个视图:

select employeeID,email,password from users
union
select friendID,email,password from user_friends

查询此视图以获取应用程序中的登录信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM