我应该规范化这个(用户)表吗?

时间:2016-01-09 20:00:52

标签: mysql database database-normalization

这适用于作业门户网站中的用户数据。

Wright现在我把这个cols放在一个users表中:

user_id
email
password
registred_date
online (user online ? 1 : 0)
last_visit
activation (activation hash for not activated users, 1 for activated)
firstname
lastname
nickname
age
location
range (from location)
telephone
skype
qualifications (IDs from qualifications table, ie: "1,4,5,21,46,52")
education
desired_salary
desired_hourly_rate
hourly_rate_fixed (hourly_rate can be fixed ? 1 : 0)
user_image

除了password, activation, user_id之外,所有cols基本上都要显示。

您认为此表应该正常化吗?

我在想的是将它分成两个表。

一种形式的帐户识别/授权/系统:

user_id
email
password
registred_date
online (user online ? 1 : 0)
last_visit
activation (activation hash for not activated users, 1 for activated)

用户个人/个人资料数据的第二个:

user_id
firstname
lastname
nickname
age
location
range (from location)
telephone
skype
qualifications (IDs from qualifications table, ie: "1,4,5,21,46,52")
education
desired_salary
desired_hourly_rate
hourly_rate_fixed (hourly_rate can be fixed ? 1 : 0)
user_image

1 个答案:

答案 0 :(得分:1)

如果你应该正常化,那就是你的电话。 以下是一些事实: 1.规范化的数据库/表需要较少的空间,但由于空间太便宜而无关紧要。如果你正常化你的数据库并且你看起来不像菜鸟,那就更好了。 2.在标准化数据库中搜索速度较慢,因为您必须进行连接等。

所以最后这是你的电话,但我会将其正常化。