参数太少错误 MS Access SQL

Too few parameters error MS Access SQL

我遇到 运行 时间错误:参数太少:预期 2。

此代码应该让下一位员工排队等待分配。员工 [programs][Language] 必须与 table CFRRR 中的 [program][language] 匹配。

strSQL = "SELECT TOP 1 WorkerID FROM attendance WHERE [Programs] LIKE '*" & program & "*' AND [Language] = '" & Language & "' AND [Status] = " & ("Available") & " ORDER BY TS ASC"
Set rs = db.OpenRecordset(strSQL, dbOpenDynaset)

这是 Debug.Print strSQL 向我显示的内容:

SELECT TOP 1 WorkerID FROM attendance WHERE [Programs] LIKE '*program*' AND [Language] LIKE '*Language*' AND [Status] = Available ORDER BY TS ASC

假设您希望 [Status] 匹配单词 Available,添加引号作为标记 ...

SELECT TOP 1 WorkerID FROM attendance
WHERE [Programs] LIKE '*program*' AND [Language] LIKE '*Language*' AND [Status] = 'Available'
ORDER BY TS ASC

然而,仍有一个 "parameter" 下落不明。在 Access 查询设计器中创建一个新查询。切换到 SQL 查看并粘贴您的声明文本。

当您尝试 运行 该查询时,Access 会弹出一个输入对话框,要求您提供参数值。该对话框还包括 Access 假定为参数的词。

将该词与您的 SQL 陈述进行比较。它通常是拼写错误的对象(字段或 table)名称、函数或 SQL 关键字。在这种情况下,我无法发现函数或关键字错误,所以会猜测问题是字段或 table 名称。