我正在使用MS Access 2016,并且创建了具有以下属性的表(实体)员工和经理:

 Employees
    -EmployeeId (Primary key)
    -Name
    -LastName
    -Email
    -Phone

  Managers
    -ManagerId (Primary Key)
    -EmployeeId (Foreign Key & Unique)
    -Position

我正在尝试在满足以下要求的2个实体之间创建关系:

  1. Managers(EmployeeId)是一个唯一值。
  2. 对于“经理”表中的每条记录,“雇员”表中必须有一条记录(因为经理是雇员)

我可以在表之间创建一对一的关系,我认为这很好,因为每个EmployeeId只能有一个ManagerId (当雇员实际上是经理时),但是我的问题是当我在Employees表中添加记录时迫使我即使在员工表中添加非经理人时也要在经理表中记录。 非常感谢我关于如何在两个表之间建立关系的任何建议。

#1楼 票数:2 已采纳

使用可视“ 关系”窗口定义关系时,Access通常会根据相关字段的索引来确定哪个是主表,哪个是“相关”表。 但是,对于两个字段的索引都是唯一的一对一关系,Access会将您单击的第一个表用作主表,将第二个表(将第一个字段拖到的表)用作相关表。 因此,它要求在添加相关表记录之前,值必须位于主表中。 我假设您通过单击并以错误的顺序/方向拖动来定义关系。

删除表之间的现有关系。 然后通过首先单击Employees.EmployeeId字段,然后将该字段拖到Managers.EmployeeId,来重新定义关系。 弹出的关系窗口应在左侧显示“ Table/Query: Employees ,在右侧显示“ Related Table/Query: Managers ”。

  ask by Fxbaez translate from so

未解决问题?本站智能推荐:

1回复

MS访问表关系麻烦

我有一个包含三个表的数据库:员工,课程和讲师。 我有些麻烦,因为有些员工可以当老师。 因此,我应该如何链接我的表,以便可以添加一些员工担任讲师。 另外,应该使用的主键和外键是什么? 谢谢
1回复

在 Access 数据库表单上列出特定要求

我正在尝试使用 Microsoft Access 数据库创建数据库,但遇到了问题。 我想创建一个包含计算机组件信息的数据库和一个列出某些组件以构建计算机的表单。 比如我想组装电脑A,我有一个所有硬盘的列表:hdd1、hdd2、hdd3、hdd4和hdd5,但只有hdd2和hdd4兼容。 我的方法
3回复

建模或关系?

您如何在ER图中转换OR关系? 例如,您有2个实体与第三个实体有某种联系,但是只有其中一个实体可以具有这种关系?(例如, BussinessOwner或PrivateOwner只能拥有一个Property )?
2回复

如何在Access 2016上创建多个表关系?

我有一张表格,显示每个学生的详细信息,以及每个学生1下第一学期的模块选择。 我也想添加第二学期的模块选择,以便可以在学生详细信息表上看到它们。 有没有办法做到这一点? 当我尝试建立关系时,学生详细信息显示在第2学期的选项表2中 ,这不是我想要的。 如果这是一个简单的问题,或者如果不可能的
1回复

一对一和一对多关系

使用Mysql Workbench,我发现one_to_one表和one_to_many表的SQL相似。 两者都使用非唯一外键来实现它们的关系。 因此,我可以在one_to_one表中插入引用父表中同一行的行,就像one_to_many表一样。 这不是违反一对一关系的吗?
1回复

ER图和关系表

我需要使用此描述来制作ER图,然后将其简化为关系表。 稍后在SQL中需要创建表,但是首先我要弄清它们。 请考虑以下有关快餐链应用程序的要求。 这条快餐连锁店可以有几家餐厅。 每个餐厅都有一个经理和一个助理经理(与经理不同),还有其他一些员工,如收银员和清洁人员。 我们知道所有员工的
1回复

主表和事务表之间的关系

在我的数据库设计中,我定义了主表(数据定义表,本质上是静态的),用于在我的网页中生成内容; 交易表,用于存储用户输入的数据(这些表本质上是动态的)。 考虑以下示例: 设置由国家具有1个硕士表:与市中号的关系,具有1市:有局部性中号的关系。 用于存储用户输入的个人详细信息的交易表用户。 用户表具
1回复

ms-access:为什么这种关系不起作用?

今天才开始了解ms访问数据库之间的关系。 谁能弄清楚为什么这行不通? 我可以用我的方式解释很多,但我认为这些图片说了1000多个字