使用查询提供Access表单

时间:2016-10-18 11:24:24

标签: forms ms-access view ms-access-2010 ms-access-2003

我有一个Microsoft Access表单,由查询提供(以某种方式)。该查询包含通过各自的主键和外键链接在一起的三个表,并且表单非常愉快地显示数据。

奇怪的是(就我而言)是表单允许使用查询进行数据输入的能力。

但是,如果用户创建了一条新记录,由于[table2]表中的必填字段,整个事情似乎都有问题。

SELECT [table1].*
    ,[table2].JobNo
    ,[table2].PlannedDateOC
    ,[table3].DateJobStarted
    ,[table1].PlanNo
FROM (
    [table1] LEFT JOIN [table2] ON [table1].PlanNo = [table2].PlanNo
    )
LEFT JOIN [table3] ON [table2].JobNo = [table3].JobNo
ORDER BY [table2].PlannedDateOC
    ,[table1].PlanNo;

根据用户的说法,此表单在从Access 97/2003格式转换为Access 2010(2007文件格式)之前完美运行。

是否有人可以澄清这是否合理(如果它应该有效),以及这个过程是否适用于任何一个版本的Access,如果是的话?能够使用查询进行数据输入的概念对我来说非常陌生。

如果您需要进一步澄清,请与我们联系。

注意: 这里需要注意的一点是,我确实将一些字段移动到表单标题中,以便在表单的其余部分滚动时它们始终可见。我不知道这是否会对表格的表现产生任何副作用。

1 个答案:

答案 0 :(得分:1)

以上查询将允许您在所有非空字段具有其值时将数据插入[table1],并确保仅table1.fields 在新记录时变脏插入。