1
假设你要转换的以下形式的关系:转换的N:M关系数据库架构
Entity1 (N,0) ------ (1,M) Entity2
或者在乌鸦的脚符号:
标准架构转换是:
Entity1 (**Entity1No**, ....)
Entity2 (**Entity2No**, ...)
Entity1_Entity2 (***Entity1No***, ***Entity2No***, ....)
FOREIGN KEY (Entity1No) REFERENCES (Entity1)
FOREIGN KEY (Entity2No) REFERENCES (Entity2)
(这里粗体表示主键和它alics外键)。
但是我不明白如何实现这样一个事实,即根据关系基数,必须至少有一个与Entity1相关的Entity2。有没有办法将这个需求包含在数据库模式中?
感谢和最好的问候。
感谢您的回答!很容易忘记ERD是为了捕获业务需求,数据库需求只是一个子集。最好的祝福。 – edel
如果您认为答案完整且有帮助,请不要忘记接受答案。 (如果有多个,你只能接受一个,作为“正确答案”或最能帮助你的答案。) –
准确!这源于当今数据库架构师特有的两种混淆。首先是ER模型和关系模型之间的混淆。其次是分析和设计之间的混淆。您分析业务,并设计数据库(和应用程序)。 –