所以基本上我正在尝试使用Access设计我的简单员工/任务跟踪数据库。
我想在Employee
表和Mission
表(多对多)之间创建关系。因此,我需要创建一个桥接或连接实体,我将其命名为Mission_Assignment
。显然,两个相关表( Mission_ID 和 Employee_ID )的PK应作为外键包含在此桥实体中。
当我尝试通过将PK Mission_ID 拖到另一个表时Mission_Assignment
与Mission
加入时,Access没有向我显示将此关系设为一个的选项即使我已经检查了Enforce refrential完整性框,也可以。我得到的唯一选择是“不确定”关系类型!
我想知道为什么会这样?为什么我不能拥有这种一对多的关系? 我尝试使用查找向导更改相关表的PK的数据类型,以便在连接表中被识别为外键,但它不起作用。
任何帮助将不胜感激。
答案 0 :(得分:4)
检查[Mission]表的结构。我怀疑[Mission_ID](或你试图在关系中使用的[Mission]中的任何列)实际上并没有被指定为该表的主键。
Access确定关系类型,如下所示:
[Table1].[Field] [Table2].[Field] Relationship Type
------------------ ------------------ -----------------
PK or Unique PK or Unique One-to-One
PK or Unique Not (PK or Unique) One-to-Many
Not (PK or Unique) Not (PK or Unique) Indeterminate
答案 1 :(得分:0)
我有类似的问题但是在阅读上面的内容之后我仔细检查了一个主键是“索引:是(复制OK)”.. 我把它改为没有重复,它允许建立关系。
感谢您的帮助。
答案 2 :(得分:0)
我在尝试创建两个表( ReportInfo和检查组)之间的关系时遇到了类似的问题 我决定使ReportNo的数据类型为Short文本,即PK,因为它是所有其他表之间的主要链接。在我的ReportInfo表中,我也有一个ID,该ID会自动递增,最初是PK,但没有意义,因为其他表都需要ReportNo作为FK。 尝试与我前面提到的两个表链接时,不确定选项是唯一可用的选项。
当我更改PK时,它解决了问题。