gpt4 book ai didi

database - 规范化的类设计是否会导致规范化的数据库设计

转载 作者:搜寻专家 更新时间:2023-10-30 22:14:03 25 4
gpt4 key购买 nike

动机:我是一个独立的开发者,所以我在开发过程中担任各种角色,从编程到 UI 设计再到数据库设计等等。(这很累) .我们都知道,一个人不可能擅长所有事情(或很多事情),而我肯定知道的另一件事是数据库应该经过精心设计和规范化。

假设:假设我是一个非常优秀的面向对象开发人员,并且我按照最佳实践(例如 SOLID) 和模式设计我的领域模型。

问题:如果我的域模型设计得很好并且我使用 ORM (例如 Nhibernate、 Entity Framework 等) 从该模型生成数据库,生成的数据库会规范化吗?

最佳答案

生成的数据库将取决于您的实体映射。如果您询问将使用的默认映射,则生成的数据库可能未规范化。

例如,如果默认情况下您有很好的继承层次结构, Entity Framework 将使用每个层次结构表 (TPH) 映射,它通过非规范化 SQL 模式启用多态性。 TPH 使用鉴别器列将层次结构中的所有类型存储在单个表中。 TPH 违反第三范式,因为鉴别器列不是主键的一部分,但某些列依赖于鉴别器值。

关于database - 规范化的类设计是否会导致规范化的数据库设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17634515/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com