1
看了一些教程后,我觉得我仍然关于基数关于one to many
和many to many
的关系感到困惑。我想在这里练习一个小例子,我知道我的设计在基数方面是错误的,这些实体之间的正确关系是什么?我感到困惑时,我有喜欢FilmPeople
和3台关系FilmGenre
仍然困惑关于基数
看了一些教程后,我觉得我仍然关于基数关于one to many
和many to many
的关系感到困惑。我想在这里练习一个小例子,我知道我的设计在基数方面是错误的,这些实体之间的正确关系是什么?我感到困惑时,我有喜欢FilmPeople
和3台关系FilmGenre
仍然困惑关于基数
关系看的权利。虽然有一些问题。
People
表作为Person
,因为你没有复数命名其他地方。FilmDirector
表格为Director
。见下一点为什么。一旦你这样做Director
表不应该有film_ID
列。FilmDirector
和Film
之间的关系是逻辑多对多关系。如果在数据库物理创建关系,它通过Film
- >FilmDirector
和Director
- >FilmDirector
表与Film
到FilmDirector
一个一对多和Director
到FilmDirector
一个一对多的关系。 FilmDirector
表连接Film
和Director
表建立多对多的关系。因此,我建议将您的FilmDirector
表命名为Director
,以便连接表可以正确命名为FilmDirector
。在多对多关系中需要这样的连接表,因为不可能在一个表行中放置多个外键引用值。条目进入连接表中的一个表中的每一行与其他表中的多个行相关。在本示例中,将Film
与多个Director
相关联,我们在FilmDirector
表中创建多个条目。类似地,将一个Director
与多个Film
相关联,我们在FilmDirector
表中进行输入。Film
,FilmGenre
和Genre
之间显示的关系是Film
和Genre
之间的物理多对多关系。如果你的模型是一个逻辑模型,你不应该显示这是一个3表关系。如果模型是物理模型,您应该将多对多显示为Film
和Director
作为3表关系。因此,决定是否要显示物理模型或逻辑模型并相应地更改模型。希望我的解释足够清楚!
你说filmDirector表格是导演,那么如果Film(意思是电影本身)必须由一个或多个导演导演?我还是没有FilmDirector和Film ......那就是为什么我把它放在那里 – Ris
编辑:是的,我在想影片有多个导演或者只有一个 – Ris
非常感谢你!...我继续了这一个,很高兴你告诉我逻辑和身体之间的许多关系的差异..希望我能给你10个喜欢 – Ris