数据库是否应包含传递属性以避免字段可空性?
数据库设计疑问:是否应为子级添加“City utility id”字段?
请看以下简单模型:
该模型遵循以下约束:
- 一个人要么是父级,要么是子级。
- 每个子级仅有一个父级
- 父级与一个公共服务实例存在关联
子级通过父级与公共服务存在传递关联。
核心问题:是否应为数据库中每个子级设置“City utility id”属性?
优势
避免字段可空性。有观点认为,若字段为可空类型,数据库构建的索引效率会更低,因为所有子级的该属性值均为null。
劣势
数据结构不够简洁,增删改(CUD)操作需要更多维护工作。该字段并未存储数据库中未体现的新数据。
内容的提问来源于stack exchange,提问作者Tormod
相关产品推荐
相关产品推荐

