我正在使用MySQL工作台为客户端构建数据库。
在这种情况下,机票可以有很多号码,但是游泳池可以有很多票。
我不确定我是否正确设置了它。
我可以看到连接"门票"表格为" TicketNumber"表具有一对多的关系。这是否意味着一张票将有很多票号?
我在" TicketNumbers"中创建了一个FK。使用" ticket_id"链接到Tickets表的表列作为参考。
对于游泳池,我在" Pools"中创建了一个FK。表格链接到"门票"表使用" pool_id"作为参考。乌鸦脚似乎表明票可以有很多游泳池,但事实并非如此?
我是否正确地完成了这项工作,还是应该通过在相反的表格中创建FK来反转关系?
答案 0 :(得分:1)
我不想回答关于图形的事情: - )
带有实线的乌鸦脚表示从单线到多线(三角形或乌鸦脚)线的识别关系。这意味着链接的字段是接收表的PRIMARY KEY的一部分。
虚线表示无识别关系。表示链接字段不是PRIMARY KEY的一部分。
在你的情况下,关系应该是FROM Pools TO Tickets,你的关系是相反的,应该是虚线(非识别)。
Tickets和TicketNumbers之间的关系似乎是正确的。它不是我最喜欢的做事方式,因为我发现number_id字段无用。我会有一个只有ticket_id和数字的表,并且这两个字段用于形成PRIMARY KEY,在这种情况下,关系应该是Tickets和TicketNumbers之间的IDENTIFYING(实线)。这更多的是艺术和科学,意见也会不同。