Access-07导航时删除记录

时间:2015-08-03 18:10:33

标签: sql ms-access ms-access-2007

我正在构建一个用户输入街道名称的子表单。表单需要在fileID-Street表中显示具有给定fileID值的所有街道名称,并自动将该ID包含在新添加的记录中。

我通过让子窗体显示包含这两列的数据表来解决这个问题。但是,此表格似乎不包括删除记录的任何方式,因此删除将导致表格膨胀,除非在后端手动处理。

我的目标是在用户离开该记录时自动删除包含空值或空白街道值的记录,或者通过过滤器将其从表单中删除。我怎么能实现这个目标呢?

我目前尝试解决方法是下面的删除查询,但它似乎并没有实际任何事情;如果我正在寻找的东西是不可能的话,修复这个可能是我的下一个最佳选择。

DELETE *
FROM [fileID-Street]
WHERE [fileID-Street]!Street Is Null;

编辑:似乎解决方法失败,因为双击查询会导致它作为Select查询而不是Delete查询运行;打开SQL视图并单击“运行”按钮固定;但是,如果可以自动删除导航,那仍然是一个更好的选择。

1 个答案:

答案 0 :(得分:1)

您要做的是在表单的AfterUpdate和AfterInsert事件中添加一些VBA。所以它看起来像这样:

Private Sub Form_AfterUpdate()
  DoCmd.OpenQuery "MyQueryName"
End Sub

MyQueryName将是您保存的删除查询的名称。