手动将记录插入链接表MS ACCESS

时间:2015-11-16 08:15:07

标签: sql vba ms-access access-vba

VBA和Access新手,希望我能正确解释一下。

我有两个表,订单和交货。

订单包括OrderNo,CustomerName,CustomerAddress,CustomerContact等。

交付包括DeliveryNo,OrderNo,DeliveryDate,DeliveryType等。

我在OrderNo之间创建了这两个表之间的关系,因为我在从订单创建交货时需要CustomerName。

但是,有时使用表单手动将交付插入表中。此记录需要CustomerName,但现在没有相应的OrderNo。

我不知道如何设置我的表以适应手动输入。 感谢帮助,谢谢

2 个答案:

答案 0 :(得分:1)

听起来业务要求是能够在没有相应订单号的情况下将交货插入交货表。如果是这种情况,则需要放宽对表的约束并删除Delivery.OrderNo和Orders表之间的关系。否则,如果由于其他原因需要强制执行外键关系,则可以使用特殊数字(0或-1)填充此字段以指示在此情况下无订单。这一切都取决于您希望如何强制执行业务逻辑。

答案 1 :(得分:0)

如果您刚刚在表单中添加了一个CustomerName字段,该怎么办?

对于我对您的问题的理解,您使用Orders表来生成交货,因此对于Orders表中的每个订单,您将向Deliveries表添加/生成记录。现在,当您手动添加交货时(使用表单),我认为没有与之关联的订单,因此没有客户名称。在这种情况下,唯一的解决方案是将一个名为CustomerName的字段添加到提到的表单中(我想手动插入交付的人知道客户的名称)和您需要的任何其他字段,以及您的业务逻辑是否需要它你可以创建一个虚拟的"使用与插入的交货相同的OrderNo订购。