CString strSql; strSql.Format("SELECT TOP 1 [time],[soil_moisture] FROM DataSheet WHERE ([position] = '%s') AND (not [soil_moisture] is NULL) ORDER BY [time] DESC",str4);
还有 strSql.Format("SELECT [time],[%s] FROM DataSheet WHERE [time] BETWEEN '%s' AND (not [%s] is NULL)AND [position] = '%s')ORDER BY [time]",strParameter,start_time,stop_time,strParameter,strloc); 其他调用的地方都类似,谢谢啦
可以用ADO助手试试你的数据库连接字符串和SQL语句。
或者加异常捕获看是什么错误
try
{
//你的ADO代码
}
catch (_com_error& e)
{
CString strMsg;
strMsg.Format(_T("错误描述:%s\n错误消息%s"),
(LPCTSTR)e.Description(),
(LPCTSTR)e.ErrorMessage());
AfxMessageBox(strMsg);
}
按照您空间ADO的使用方法测试如下:
//rs,记录集智能指针
//cntX,连接只能指针
这是ADO内的相关数据
strSql.Format("SELECT TOP 1 [time],[soil_moisture] FROM DataSheet WHERE ([position] = '%s') AND (not [soil_moisture] is NULL) ORDER BY [time] DESC",str4);
其他调用的地方都类似,谢谢啦
你把format好之后的串贴出来
我没有改动程序的任何语句,只是把format之后的语句在SQL的查询分析器里测试