Access 2003 VBA SQL“参数太少”错误

时间:2012-01-09 21:18:48

标签: sql ms-access vba

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 个答案:

答案 0 :(得分:5)

我无法确切地说,但我99%确定问题是您在该查询中包含了一个字段名称,该字段名称在表格中不存在。检查所有字段名称,确保它们的拼写与表格中的拼写完全相同。

此外,“日期”字段可能是可疑的,因为它是Access中的保留字。我建议不要命名一个字段“Date”。但是,如果您坚持使用该名称,请在所有查询中用方括号括起来,如下所示:

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)