【发布时间】:2013-01-14 12:11:13
【问题描述】:
设置:我正在创建一个 ms access 数据库来记录我和其他人将要完成的实验结果。我创建了一个表单和一个子表单;主表单包含有关设备设置的字段,子表单包含该设备设置的实验。链接主节点和链接子节点是 SettingID。
问题:尽管主 [设置] 表单中的字段仅限于组合框选择,但仍有许多设置组合。因此,当用户在表单中输入信息时,他们可能没有意识到已经存在具有相同设置的记录,并且由于 SettingID 是自动编号,因此它看起来是唯一的记录,而实际上并非如此。
问题:我想对 BeforeInsert 事件运行查询,以在创建此记录之前检查是否存在具有相同设置的记录。如果记录不存在,则照常进行;如果确实存在,则提醒用户并将他们带到该记录。我不知道如何做到这一点。到目前为止我所做的尝试不值得一提,但我会继续尝试找出一些东西,直到有人回答这篇文章。
【问题讨论】:
-
您是否为组合设置字段(列)添加了唯一索引?
-
我不确定我是否理解这个问题。但是,我唯一的索引字段是我的主键。在主窗体中,我的 SettingID(也是子窗体和主窗体之间的链接)是索引主键,在我的子窗体中,ExperimentID 是索引主键。由于设置的不同组合如此之多,因此很难仅通过数字来识别特定设置。 **顺便说一句,我是 ms 访问的新手。
-
@Remou 指的是使用索引来强加您正在寻找的唯一值。索引不必是表键。请参阅office.microsoft.com/en-us/access-help/…,特别是多列索引部分。
标签: sql database ms-access duplicate-removal