这是一个完整的新手问题,但我找不到任何在线解决方案(至少对我的理解没什么)。我想创建一个带有文本框和按钮的表单,然后单击该按钮,该按钮应采用文本框中写入的值,在表中查找具有该ID的行,并将属性更改为unavailable
。通常我会用一个简单的SQL语句来做到这一点:
UPDATE table SET available='NO' WHERE id = *textbox.value*;
我应该写什么而不是textbox.value才能起作用?
答案 0 :(得分:1)
您可以参考开放表格:
UPDATE table SET available='NO' WHERE id = Forms!MyForm!MyTextbox
假设表单是主表单而不是子表单。您还可以在VBA中运行SQL。确保您不通过表单和查询或代码同时更新记录。
重新评论
在这种情况下,问题是腐败,这是我经常忘记注意的事情。你会在这里找到一篇好文章:http://www.granite.ab.ca/access/corruptmdbs.htm,包括反编译。
答案 1 :(得分:1)
如果符合以下条件,从文本框中获取值会更加轻松:
如果我理解正确的问题,就是这种情况。
然后你可以这样做:
Dim SQL As String
'case 1: when the id is a string value
SQL = "UPDATE table SET available='NO' WHERE id = '" & Me.NameOfTheTextBox & "';"
'case 2: when the id is a numeric value
SQL = "UPDATE table SET available='NO' WHERE id = " & Me.NameOfTheTextBox & ";"
CurrentDB.Execute SQL