Microsoft Access数据库中有两个表。其中一个定义元素,另一个引用它们。然而,该参考是可选的。该值可以为NULL。只要外键存在,我就不允许插入或更新NULL值。在没有外键的情况下保存NULL值后,我无法添加密钥。
引用列设置为“Required = false”,并且允许自己使用NULL值。只有参照完整性不能处理NULL值。
如何解决?
更新:我想到了一些可能相关的东西:我的外键使用了两列。其中一个总是设置,但另一个可以为空。
添加了示例架构:
表总线:
列:
•objid整数
•busnumber整数
•名称变量
主键:objid,busnumber
表conn:
列:
•objid整数
•名称变量
•bus1整数
•bus2整数
主键:objid,名称
conn(objid,bus1)引用总线(objid,busnumber)为1:n和
conn(objid,bus2)引用总线(objid,busnumber)为1:n
两个引用都是可选的,但是objid是上级对象的一部分,并且始终设置。
答案 0 :(得分:1)
在所示的示例设置中,很有可能将null编辑为现有元素并创建具有空值的记录。我怀疑你可能没有正确设置。