各位大侠,小弟在使用记录集的recordcount时总是出错!!!
开始时得到-1,在其他地方看到的的解决方法是
rs.open strsql,connect,1,1
结果试了,有时可以有时不好用,但是如果打开数据库并打开要查询的表就好用了!!
我使用的数据库是sybase sql anywhere
请各位赐教!!!
开始时得到-1,在其他地方看到的的解决方法是
rs.open strsql,connect,1,1
结果试了,有时可以有时不好用,但是如果打开数据库并打开要查询的表就好用了!!
我使用的数据库是sybase sql anywhere
请各位赐教!!!
do while not .eof
n=n+1
.movenext
loop
connect.CursorLocation = adUseClient
connect.Open
rs.open strsql,connect,1,1在读记录集条数时,游标需要设成客户端的,否则即便有记录,recordcount也会显示为-1。游标默认情况是服务器端的。
connect.CursorLocation = adUseClient
不然的话就像一楼说的了,自己做个函数
在读记录集条数时,游标需要设成客户端的,否则即便有记录,recordcount也会显示为-1。
游标默认情况是服务器端的。 dim rs as new adodb.recordset
rs.CursorLocation = adUseClient
rs.open ""
reset.open SQlstr,conn,3,3
n=n+1
.movenext
loop
这种方法用消防水龙头(adOpenForwardOnly)提高速度
我测试通过了
Dim rs As New ADODB.Recordsetrs.Open "select * from dbstudent", cn, adOpenStatic, adLockReadOnly
'注意,打开的记录集是 adOpenStatic静态类型,否则就是-1
rs.RecordCount
这样写可能会有效。
rs.open strsql,connect,adopenkeyset,adLockOptimistic
connect.CursorLocation = adUseClient
rs.open strsql,connect,1,1
rs.recordcount就不会出现-1了.