这两天经常有朋友问我。为什么我的数据库有记录。但RecordCount=-1。到底是什么原因导致的呢?
一般人们都使用以下两种方法来执行SQL语句:
SetRs=Conn.Execute(SqlStr)
和
SetRs=Server.CreateObject(“ADODB.RecordSet“)
Rs.OpenSqlStr,Conn,CursorType,LockType
(RecordSet对象方法请看这里)
由于默认的记录集游标是服务器游标。
Rs.CursorLocation=adUseServer
所以返回Rs.RecordCount=-1,
应该把服务器游标改为客户端游标。
Rs.CursorLocation=adUseClient
Rs.OpenSqlStr,Conn,CursorType,LockType
rs.cursortype
光标类型recordcount属性
---------------------------------------------
ForwardOnly0(默认)返回-1
Keyset1正确的记录数
Dynamic2-1或不正确的记录数。依数据源而定
Static3正确的记录数
所以Rs.CursorLocation=3
可用recordset.support("属性名")进行测试是否支持该属性。
本文地址:https://gpu.xuandashi.com/36340.html,转载请说明来源于:渲大师
声明:本站部分内容来自网络,如无特殊说明或标注,均为本站原创发布。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。分享目的仅供大家学习与参考,不代表本站立场!