如何制作在 Access 2016 中运行更新查询的按钮

Posted

技术标签:

【中文标题】如何制作在 Access 2016 中运行更新查询的按钮【英文标题】:How do I make a button that runs an update query in Access 2016 【发布时间】:2017-05-16 21:37:45 【问题描述】:

我有一个使用以下 SQL 的更新查询

UPDATE UserListTest 
SET UserListTest.UserName = [forms]![EmployeeAdd]![NewFullName], 
UserListTest.AccessCode = [Forms]![EmployeeAdd]![NewCode]
WHERE (((UserListTest.AccountNumber)=[forms]![EmployeeAdd]![NewUserAccount]) 
AND ((UserListTest.UserNumber)=[forms]![EmployeeAdd]![NewUserNumber]));

代码应更新表“UserListTest”,并将 userName 和 AccessCode 中的值替换为表单中 AccountNumber = NewUserAccount 和 UserNumber = NewUserNumber 的记录中的值。

我目前在表单中有一个设置为运行查询的按钮,但是每当按下它时,它只会拉出带有先前条目信息的查询。我能够让它更新表中记录的唯一方法是按下按钮,然后转到查询中的设计视图,然后按下左上角的运行按钮。我试过点击刷新,但这似乎只是清除了更新查询中的字段。

我希望能够制作一个自动完成所有这些操作的按钮,而不必每次都进入设计视图。

感谢任何帮助。

【问题讨论】:

您当前的按钮代码是什么? 【参考方案1】:

例如,您可以这样做:

CurrentDb.Execute "UPDATE UserListTest " & _
    "SET UserName = '" & Me.NewFullName & "', AccessCode = '" & Me.NewCode & "' " & _
    "WHERE AccountNumber=" & Me.NewUserAccount & " AND UserNumber=" & Me.NewUserNumber, dbFailOnError

我假设,位于 EmployeeAdd 表单、UserName 和 AccessCode 列中的按钮是文本、AccountNumber 和 UserNumber - Number 数据类型。否则添加/删除单引号。

如果查询已保存,您可以运行它:

CurrentDb.Execute "qryMyQueryName", dbFailOnError

【讨论】:

以上是关于如何制作在 Access 2016 中运行更新查询的按钮的主要内容,如果未能解决你的问题,请参考以下文章

MS-Access:对链接的 CSV 文件的慢查询

Access 2016 - 简单更新查询给出“操作必须使用可更新查询”错误

SELECT 查询中的 MS Access“此记录集不可更新”

无法弄清楚 MS Access 的此更新查询代码有啥问题

如何使用 Access ODBC 通过一个查询更新多个表?

在 Access 2013 中使用 SQL 更新查询