recordcount=-1的原因以及解决方法

xiaoxiao2021-03-01  5

 这两天经常有朋友问我,为什么我的数据库有记录,但RecordCount=-1,到底是什么原因导致的呢?RecordCount=-1问题如何解决呢,下面请看系统圣地给大家详解一下吧。

 

  一般人们都使用以下两种方法来执行SQL语句:

 

  Set Rs=Conn.Execute(SqlStr)

 

  和

 

  Set Rs=Server.CreateObject(“ADODB.RecordSet“)

 

  Rs.Open SqlStr,Conn,CursorType,LockType

 

  (RecordSet对象方法请看这里)

 

  由于默认的记录集游标是服务器游标,

 

  Rs.CursorLocation = adUseServer

 

  所以返回Rs.RecordCount=-1,

 

  应该把服务器游标改为客户端游标,

 

  Rs.CursorLocation = adUseClient

 

  Rs.Open SqlStr,Conn,CursorType,LockType

 

  rs.cursortype

 

  光标类型 recordcount 属性

 

  ForwardOnly 0(默认) 返回-1

 

  Keyset 1 正确的记录数

 

  Dynamic 2 -1或不正确的记录数,依数据源而定

 

  Static 3 正确的记录数

 

  所以Rs.CursorLocation = 3

 

  可用recordset.support("属性名")进行测试是否支持该属性。

转载请注明原文地址: https://www.6miu.com/read-3100257.html

最新回复(0)