领域模型中的泛化关系在转化到关系型数据库存储模型的时候怎么设计表结构比较好?

2023-07-11 15:25:03 +08:00
 lologame

譬如 类 B 和 类 C 继承 类 A ,那设计表结构的时候是应该搞三张表分别对应 ABC ,还是搞两张表对应 BC ,还是只用一张表就行了?

936 次点击
所在节点    程序员
6 条回复
bellaris
2023-07-11 15:43:57 +08:00
我是用一张表存(当宽表用了)
问题就是搞着搞着字段贼多
MoYi123
2023-07-11 15:58:37 +08:00
数据库的表也能继承, 虽然可能没人会用这个功能.

https://www.postgresql.org/docs/current/tutorial-inheritance.html
8355
2023-07-11 16:20:31 +08:00
继承难道不是增量差异吗。。。 你怎么理解继承?
8355
2023-07-11 16:21:31 +08:00
所以 应该是相同的对应关系+扩展字段 B 和 C 先查询 A 表 然后组合自己表的数据
zgl263885
2023-07-11 16:21:36 +08:00
各自是各自的表吧,毕竟字段可能不同,A 只有三个字段,B 可能 有 3+10 个字段,C 可能有 3+7 个字段;另外 A 要是抽象类(接口作用),那就不会有实例的产生,就不会有表的存在.例如 A 代表动物,B 代表猫,C 代表鸟
thinkershare
2023-07-11 16:27:46 +08:00
一张表足够,或者干脆不要使用关系数据库。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/955852

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX