1

Microsoft Access 数据库中有两个表。其中一个定义元素,另一个引用它们。然而,这个参考是可选的。该值可以为 NULL。只要外键存在,我就不允许插入或更新 NULL 值。在没有外键的情况下保存 NULL 值后,我无法添加键。

参考列设置为“Required = false”,并且允许单独使用 NULL 值。只有参照完整性不能处理 NULL 值。

那怎么解决?

更新:我想到了一些可能相关的事情:我的外键使用了两列。其中一个始终设置,但另一个可以为空。

添加了示例架构:

表总线:
列:
• objid 整数
• busnumber 整数
• name varchar
主键:objid、busnumber

表 conn:
列:
• objid 整数
• name varchar
• bus1 整数
• bus2 整数
主键:objid、名称

conn (objid, bus1) 引用总线 (objid, busnumber) 作为 1:n 并且
conn (objid, bus2) 引用总线 (objid, busnumber) 作为 1:n

两个引用都是可选的,但 objid 是上级对象的一部分并且总是被设置。

4

1 回答 1

1

在所示的示例设置中,很有可能将空值编辑到现有元素并使用空值创建记录。我怀疑你可能有一些不完全正确的设置。

与空值的关系

于 2013-01-21T12:45:34.023 回答