仅在按钮单击时添加记录

时间:2012-08-30 21:26:12

标签: ms-access-2010

我有一个将'data entry'属性设置为yes的表单。它绑定到一个表。当我开始填写表格时,它会自动保存。我不希望这种情况发生。当我按下按钮时,我只希望表单保存到表格中。有什么简单的方法吗?没有vba。如果我只能用vba做到这一点让我知道如何做到这一点。

1 个答案:

答案 0 :(得分:1)

执行此操作的最佳方法是使用未绑定的表单。当用户单击“保存”时,您可以运行查询以从控件更新表。

使用记录集

 Dim rs As Recordset
 Set rs=CurrentDB.Openrecordset("MyTable")

 rs.AddNew
 rs!Field1 = Me.Field1
 rs.Update

如果您想更新已经知道主键的记录,可以说:

 Dim rs As Recordset
 Set rs=CurrentDB.Openrecordset("SELECT * FROM MyTable WHERE ID=" & Me.txtID)

 rs.Edit
 rs!Field1 = Me.Field1
 rs.Update

使用您在查询设计窗口中创建的查询

查询的SQL

 INSERT INTO MyTable (Field1) 
 VALUES ( Forms!MyForm!Field1 )

VBA

这会发出警告

 DoCmd.OpenQuery "MyQuery"

这不会

 CurrentDb.Execute "Query2", dbFailOnError

您还可以使用动态SQL或带有您在代码中指定的参数的查询。