Access 2003 VBA SQL“参数太少”错误
Posted
技术标签:
【中文标题】Access 2003 VBA SQL“参数太少”错误【英文标题】:Access 2003 VBA SQL "Too few parameters" error 【发布时间】:2012-01-09 21:18:47 【问题描述】:Dim sort_slots_sql As String
sort_slots_sql = _
"select date, part, service, slot" & _
" from ass_slots, ass_occasions" & _
" where ass_slots.occasion = ass_occasions.occasion" & _
" order by slot, service, date, part"
Set slots_rst = db.OpenRecordset(sort_slots_sql)
这给出了参数太少的错误。一个是预期的。在代码的另一个地方,有一个几乎相同的情况,但是,两个参数是预期的!
【问题讨论】:
【参考方案1】:我不能确切地说,但我 99% 确定问题是您在该查询中包含了一个在表中不存在的字段名称。检查所有字段名称并确保它们的拼写与表格中的完全一致。
“日期”字段也很可能是可疑的,因为它是 Access 中的保留字。我建议不要将字段命名为“日期”。但是,如果您坚持使用该名称,请在所有查询中用方括号将其括起来,如下所示:
Dim sort_slots_sql As String
sort_slots_sql = _
"select [date], part, service, slot" & _
" from ass_slots, ass_occasions" & _
" where ass_slots.occasion = ass_occasions.occasion" & _
" order by slot, service, [date], part"
Set slots_rst = db.OpenRecordset(sort_slots_sql)
【讨论】:
正确,在其中一个表中,有一列被命名为“datum”(瑞典语表示日期)。非常感谢! 你打赌。看到这个错误一百万次。祝你的应用好运。 哇,你看到了很多错误。你看过《太多双关语》吗? ;) @onedaywhen Err number 69,也许?以上是关于Access 2003 VBA SQL“参数太少”错误的主要内容,如果未能解决你的问题,请参考以下文章
odbc_exec():SQL 错误:[Microsoft][ODBC Microsoft Access Driver] 参数太少。预期 1.,SQLExecDirect 中的 SQL 状态 0700