【问题标题】:How do i insert a value taken from text box (object) on a form into a 'LIKE' Query in MS Access如何将表单上的文本框(对象)中的值插入到 MS Access 中的“LIKE”查询中
【发布时间】:2020-07-13 21:33:04
【问题描述】:

我正在尝试构建一个更新查询,其中一旦用户将一些文本输入到我安装在表单上的文本框中,就会运行一个查询(或者可能是循环),以便基础表中的所有记录包含输入到文本框中的值将被标记。

目前我的策略是获取文本框中的值,将其粘贴到保存表(我称之为 tblSearchEngine07)中,然后运行我的查询,该查询旨在识别字段中名为 ' 的所有记录tblMasterListOfEventsNotes' 粘贴在我的持有表中的值将被引用。不幸的是,我遇到了语法问题,无法成功地将持有表值正确插入到我的查询中。

这是我当前的查询语法:

SELECT tblSearchEngine01.tblMasterListOfEventsNotes
FROM tblSearchEngine01, tblSearchEngine07
WHERE (((tblSearchEngine01.tblMasterListOfEventsNotes) Like "*[tblsearchengine07].[parolachiave]*"));

【问题讨论】:

  • 你能公开你的代码吗?标记记录是什么意思?你也可以公开你的桌子吗?
  • 嗨 Kiks73。我不确定您是否在我 5 分钟前进行的编辑之前阅读了我的旧问题。我重写了整个问题。感谢您的关注。

标签: ms-access vba ms-access-2010


【解决方案1】:

试着用这个代替你的喜欢:

like "*" & tblsearchengine07.parolachiave & "*"

更新。

如果您对将搜索值存储在表中不感兴趣,您可以通过读取 textBox.value 来简单地创建查询字符串,如下所示:

Dim sql as string
sql = "update yourtablename set yourfiled = true where yourconditionfield like '*" & textboxname.value & "*'"
Docmd.runsql sql

【讨论】:

  • 你明白了.. 非常感谢.. 我仍然不确定这个网站是如何运作的,但我可以为你的努力提供一些声誉积分吗?
  • 如果您不介意,可以快速跟进/概念性问题。在您看来,我识别这些记录的策略是最好的还是有更好的方法? (例如:不必创建该保存表来保存文本框值)
  • 如果您不需要存储搜索数据,您可以简单地创建您的 sql 字符串,直接读取您的 textBox.value。我试图在我当前的答案中解释它
  • Kiks73,推进您的解决方案并创建 SQL 更新查询,我有以下内容,但不幸的是我收到了一条错误消息。你能快速看一下吗?我认为这与引号有关。
  • st_sql = "UPDATE tblSearchEngine01, tblSearchEngine07 SET tblSearchEngine01.Query07ParolaChiaveSelect = '1' WHERE (((tblSearchEngine01.tblMasterListOfEventsNotes) Like " * " & [tblsearchengine07].[ParolaChiave] & " * "))" Application.DoCmd.RunSQL (st_sql)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-12-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多