自动编号在访问中不明显

autonumber not distintc in access

是否可以创建一个 table,其中两列代表一个主键,其中一列是自动编号但不是不同的。类似于 (teacherID,schoolID(FK),teacherName),其中前两个是主键,第一个是自动编号。当插入来自不同学校的教师时,teacherID 自动增量应取决于学校。

插入示例

我知道可以像这样进行 SQL 查询插入,但是在 table 设置中可以吗?

自动编号不是这样工作的。如果你想做这样的事情,你将不得不自己计算。但我必须提醒你不要这样做。我假设这是一位老师 table 而你想做的是个坏主意,因为

  1. 每个老师都应该有自己唯一的密钥。
  2. 将键的一部分作为可以随时间变化的外键的组合键是个坏主意。

你是这样说的:Something like (teacherID,schoolID(FK),teacherName) where first two are primary key and first one is autonumber.

听起来你的老师和学校之间有多对多的关系。这很正常。您需要 3 tables - 老师、学校和路口 table 才能完成此任务。我们称它为 teacherSchool。它将包含其他 2 tables 的外键,以及您要存储的任何其他内容(isActive、dateCreated 等)。它的主键将是两个外键加上使其唯一所需的任何其他内容。

要将记录输入 teacherSchool table,您必须向插入查询传递必要的值。这将被合并到您用于数据输入的任何内容中。事实上,即使使用您当前的设计,您也需要一些东西让您的数据输入人员能够识别学校。无论是什么,都应该将 schoolID 传递给您的插入查询。