繁体   English   中英

SQL表关系

[英]SQL Table Relationships

我试图为处理工作单票证上的服务活动的SQL数据库创建一些表关系。 我对这些表有一对一的关系,并有一个问题。 我有用于创建工单的WOT(工单)表。 WOT可以在与之关联的不同日期进行多个服务活动。 每个服务活动可以使用多个部分(用于维修)。 这只是基本思想,但是我创建了以下表和关系:

WOT Table:

wot> wotnum – PK

Service Activity Table:

service_activity> serviceid – PK

service_activity> wotnum – FK(链接到WOT表中的PK)

Part Used Table:

partused> partusedid – PK

partused> serviceid – FK(链接到“服务活动”表中的PK)

上面的每个表也都有其他列(未显示),但是它们对于表是唯一的,例如日期字段,零件号等。

service_activity>serviceid (PK)字段是一个自动增量字段, partused>partusedid (PK)字段也是如此。

我的问题是,在数据输入过程中,如何确保partused> serviceid字段(FK)与service_activity>serviceid field (PK)同步,而无需实际输入partused>serviceid field (FK)

尽管我对表和关系有很好的理解(现在要正确解决这个问题至关重要),但是对于思考表在实际数据输入期间将如何交互的过程,我还是有些新手。 我认为对此的答案可能很简单,但我还没有掌握。 如果我目前的解决方案似乎还不够,我欢迎提出建议。 我需要一些帮助才能朝正确的方向前进。

如果正确添加了FK,则在数据输入期间手动输入partused.serviceid列数据时,它将自动引用service_activity.serviceid列。

例如:如果您只有一个service_activity,且serviceid = 456

  1. 当您尝试在与partused.serviceid = 500一起使用的表中插入数据时,它将引发错误,并且将不允许插入。

  2. 当您尝试在与partused.serviceid = 456一起使用的表中插入数据时,它将成功,因为另一个表中的引用行确实存在。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM