我们应该总是把一对一的桌子放在一起吗?
我有一个用户id uid,一个包含基本信息的表:
uid, name, address, etc..
另一个表基本上是相同的,外键在前一个用户表上
uid, stats, etc..
我应该把它们组合起来吗?什么时候有意义,什么时候我不想?
最佳答案
在Five Normal Forms for Relational Databases上查看此资源。在其中,您将找到一些指导原则,用于决定如何组合信息或将其拆分成表。
简而言之,使用这个经验法则:
每个表应该表示一种类型的东西。
主键应该唯一地将该项与表中的其他项区分开来。
表中的每一列都应该依赖主键值,并且只依赖主键值。
如果一个表中的多个字段构成一个逻辑子组(例如地址的一部分),那么它们可能应该有自己的表。
关于database - 如何确定列应该合并在单个表中还是拆分成多个表?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2253736/