2013-02-28 131 views
1

我正在构建一个数据库,用于定义和跟踪组织内使用的文档。这些文件中的每一个都有一个与其相关的类别。将每个文档的类别作为主表中的“TEXT”存储起来效率更高吗?或者将每个文档的类别存储为“SMALLINT”会更有效,并且有一个查找表将其等同于一个“TEXT”字段?PostgreSQL:哪种数据类型更适合这种情况?

回答

5

这不关乎效率。这是关于参照完整性。使主表中的列引用类别表。

http://en.wikipedia.org/wiki/Referential_integrity

+0

但问题是我应该做的栏目表开始说起,或者干脆把类别为文本字段在主表? – 2013-02-28 15:12:00

+1

@杰弗逊你**必须**制作类别表。如果没有这个参考,主表迟早会变成垃圾。 – 2013-02-28 15:14:24

+1

作为一个细微的说明,你可以有一个文本值作为主键的分类表,并参照这种方式。这优化选择,如果这是你所关心的,因为你不需要加入。 – 2013-02-28 15:21:52

相关问题