数据库:拆分表

我最近读了很多关于数据库,冗余等的内容。

现在我正在构建一个用户表,它将保存关于在我的系统中注册的用户的所有信息。

用户表应该包含:身份证(PK),用户名,密码,电子邮件和地址(街道,城市,邮编,国家)。

我应该拆分地址并创建另一个只保存用户地址的表格,如:id(PK),street,city,zipcode,country,user_id(FK))? 我甚至可以在这里把邮政编码和国家分割到新的桌子上。

这是否有意义,特别是将邮政编码和国家分成一个新表格?

干杯!


那么我在这里想到了一些冗余方面的问题。 把国家放在一张桌子里,而不是一次又一次地在我的用户桌上写下来不是更好吗? - >冗余


对于大多数情况,答案是否定的。 为什么需要额外的连接来查找地址? 为什么两个表有一对一的关系?

正如其他人所说,除非你确信性能有所提高,否则不要让你的生活复杂化。


我个人并没有看到将这些细节分解成分离表格的附加价值。

即使您不太经常使用地址/邮政编码,您也可以使用SELECT username,email..而不是SELECT *.. SELECT username,email..只选择必要的字段SELECT *..

链接地址: http://www.djcxy.com/p/37895.html

上一篇: Database: Splitting Tables

下一篇: Best way to store password in database