QueryDef.OpenRecordset语句给出“数据类型转换错误”

时间:2013-12-31 20:43:36

标签: ms-access ms-access-2010 dao

我正在尝试使用带有.openrecordset的MS Access 2010中的查询,但它有一个需要填充的条件。我可以单独运行此查询并使用打开的表单,但是当我尝试将其作为记录集打开时,它似乎需要一个参数。

以下是查询:

SELECT tbl_equipmst.EquipmentNum, Sum(tbl_equipmentsummary.Miles) AS SumOfMiles
FROM tbl_equipmst INNER JOIN tbl_equipmentsummary ON tbl_equipmst.EquipmentNum = tbl_equipmentsummary.EquipmentNum
GROUP BY tbl_equipmst.EquipmentNum, tbl_equipmentsummary.BatchNo, tbl_equipmst.Z, tbl_equipmst.ZDisabled
HAVING (((tbl_equipmentsummary.BatchNo)=[batch]) AND ((tbl_equipmst.Z) Like "Z*") AND ((tbl_equipmst.ZDisabled) Is Not Null));

这是我的代码:

Dim rs As DAO.Recordset
Dim qd As DAO.QueryDef
Set qd = CurrentDb.QueryDefs("qry_Z_Equipment")
qd.Parameters(0).Value = BatchNo
Set rs = qd.OpenRecordset("qry_Z_Equipment")

但现在我得到“数据类型转换错误”。当我调试并将鼠标悬停在qd.Parameters(0).Value上时,我得到“3”,这应该只是一个整数。有没有我错过的东西,你传递了正确的数据类型?

0 个答案:

没有答案