2009-02-12 22 views
3

我的网站现在要开始允许两种不同类型的用户注册......如何处理不同类型的用户?

  1. 正常人
  2. 公司

两个就能做同样的事情在网站上,但他们的个人资料将看起来不同,并确定他们会想要存储关于他们自己的不同类型的信息。

我的问题是:我应该将它们存储在单独的mysql表中吗?或...我应该把它们放在1上并将它们标记为“用户”或“公司”?

我真的可以用你的输入,以帮助我避免要么...

感谢陷阱!

回答

8

This link解释了一些最佳数据库实践。

我会创建一个带有UID的“Accounts”表,两者之间存储共同信息,以及它是哪种类型的帐户。

然后是一个包含公司特定信息的“公司”表,使用与该帐户相同的UID,并且我不知道具有特定于用户的信息的“用户”表。

这可以防止您必须制作两个非常相似的表格,具有未使用的列或复制数据。

像这样:

Accounts 
UID|UserName|Password|Account Type 

Companies 
UID|Company Name|Address|Contact Person 

Users 
UID|First Name|Last Name|Display Name 
+0

这是一个很酷的设置......所以基本上只是一个BASIC用户信息表和perriferal(拼写?)表来夸赞用户的种类。 LIKE IT – johnnietheblack 2009-02-12 22:38:02

1

不要把他们完全独立的表,否则你要查找的用户名,占2个不同地方的详细资料给你,如果语句随处可见。然后,你将有一段时间试图做参照完整性,并试图使“订单”表引用用户或客户表。可以将共享信息放入一张表中,并将特定的东西放入额外的表中,或将所有内容放在一张大表中。

相关问题