查询语句:
select * from tmp where ymdht between '2006100101' and '200610312359'
数据表中明明有数据(ymdht字段为字符类型,12位),其它连接都正确,
执行 Rs.Open cSql, Cn, adOpenDynamic, adLockReadOnly
nCord = Rs.RecordCount 后,为何返回的记录总数为-1
错在那里呀?
select * from tmp where ymdht between '2006100101' and '200610312359'
数据表中明明有数据(ymdht字段为字符类型,12位),其它连接都正确,
执行 Rs.Open cSql, Cn, adOpenDynamic, adLockReadOnly
nCord = Rs.RecordCount 后,为何返回的记录总数为-1
错在那里呀?
指示 Recordset 对象中的记录数目。返回值返回 Long 值,指示 Recordset 中的记录数目。说明用 RecordCount 属性查找 Recordset 对象中的记录数目。如果 ADO 无法确定记录数目或者提供者或游标类型不支持 RecordCount,该属性将返回 -1。读取已关闭的 Recordset 的 RecordCount 属性将产生错误。如果 Recordset 对象支持近似定位或书签(即 Supports (adApproxPosition) 或 Supports (adBook) 分别返回 True),那么不管是否已被完全预置,此值都将是 Recordset 中的记录的确切数目。如果 Recordset 对象不支持近似定位,此属性可能会由于必须对所有记录进行检索和计数以返回精确的 RecordCount 值而严重消耗资源。Recordset 对象的游标类型将影响是否能确定记录的数目。对于仅向前游标,RecordCount 属性将返回 -1;对于静态或键集游标,将返回实际计数;而对于动态游标,则返回 -1 或实际计数,这取决于数据源。==========================================================而对于动态游标,则返回 -1 或实际计数,这取决于数据源
你这样试试不就知道了
Rs.Open cSql, Cn, adOpenStatic, adLockReadOnly