我在代码中有一段查询数据库代码:
CString   strLength;
strLength.Format("%d",i);
m_strFilter="where LEFT([CoilID],"+strLength+")='"+strCoilId.Left(i)+"'";
m_CoilSet->SetFilter(m_strFilter);//设置查询语句,此处出错
其中SetFilter为CodeProject网上别人写的ado2.h类中一个封装过的函数,该函数应该没有问题。
每次都提示参数类型不正确,或不在可以接受的范围内,或与其他参数冲突,而如果我把查询语句改为:
               m_strFilter="[CoilID]='"+strCoilId+"'";
则函数就能顺利通过,并能正确查询,是不是LEFT([CoilID],"+strLength+")有问题?但是该语句完全正确呀,而且我使用ODBC下就可以正确查询,急呀,谢谢大家帮忙!