ms-access - Access 、多个一对一连接问题

标签 ms-access one-to-one

我在 Access 方面遇到问题,我正在尝试创建机场数据库,但无法真正在机票、乘客和行李之间建立一对一 - 一对一 - 一对一的连接。这个想法是,一名乘客可以拥有一张机票和一件行李,当我像图片上那样操作时,我无法从机票上获取行李,也不能从乘客处获取行李,只能从行李本身获取行李。

My diagram

最佳答案

主要的图表应该是这样的:

enter image description here

简单数据和 key :

enter image description here enter image description here enter image description here enter image description here enter image description here enter image description here enter image description here enter image description here

示例查询(所有带有相关链接数据的工单):

SELECT Tickets.Ticket, 
       Tickets.Person, 
       Flights.Flight, 
       Luggages.Luggage
FROM Flights 
INNER JOIN (
   (Persons INNER JOIN Tickets ON Persons.ID = Tickets.Person)
LEFT JOIN Luggages ON Tickets.ID = Luggages.ID)
    ON Flights.ID = Tickets.Flight;

enter image description here

第二个 View 就是目的,因此由您来进行调整。

enter image description here

注意: 3号人没有行李。 第 1 人和第 2 人乘坐同一航类。

使用了 MS Access,但设计并未绑定(bind)到特定的 RDBMS(仅针对特定实现进行方言调整)

此外,Persons-Tickets 关系存在错误,应为 1-n。(类似 Flight-Tickets)。

还可以绑定(bind)额外的约束。 例如:一个人可以在特定时间只乘坐一次航类。

关于ms-access - Access 、多个一对一连接问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70227397/

相关文章:

使用表行的 SQL foreach

python - MS-Access 数据库在插入期间变得非常大

java - org.hibernate.ObjectDeletedException : deleted object would be re-saved by cascade when collection objecs have a one to one association

Django相关模型和UpdateView字段

java - hibernate 中实体的 setter 中的空指针异常

swift - NSPredicate:无法解析关系的格式字符串

mysql - 连接列并返回空值 - MS access

ms-access - 腐败的形式 - 救援还是改造?

c# - 如何使用 visual c# 从 access mdb 获取数据并将其放入 postgresql 表中?

hibernate - 在 Hibernate 中防止 select 查询时插入