在数据库设计中,对于小块数据,元组与引用表的感受是什么?
例如,假设您正在设计一个涉及办公室管理的模式。您想记录每个员工所属的部门,但对与部门相关的任何信息不感兴趣。那么,您是否在 EMPLOYEE 表中将部门作为字符串/char/varchar/etc,或者将其改为与 DEPARTMENT 表相关的外键。
如果 DEPARTMENT 表只记录部门名称,则通常希望将其与 EMPLOYEE 表结合起来。但是,如果这包含在 EMPLOYEE 表中,则不能保证某些用户将 HR 称为“HumanResources”,某些用户可能将其称为“HR”,有些可能将其称为“人力资源”,等等。将其作为外键可以保证它只能是一件事。此外,如果要添加有关部门的其他信息,如果它在自己的表中会很容易。
那么人们怎么看呢?自然,更多的表和引用也可能对性能产生负面影响。我的问题是专门针对 Oracle 11g 提出的,但我怀疑所涉及的 rdms 类型与此设计考虑因素有多大关系。