我的rs.recordcount为什么等于-1?

aspvbjava 2003-03-28 04:20:50
有没有人碰到过这种情况阿?
郁闷死我了,调试了一个下午,也没搞明白
至少也应该是0啊,何况我数据库中还有一条记录呢
大人指点阿!!!!!!
...全文
292 13 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
hzybc 2003-03-29
  • 打赏
  • 举报
回复
用 adOpenStatic
look4u 2003-03-28
  • 打赏
  • 举报
回复
使用 RecordCount 属性可确定 Recordset 对象中记录的数目。ADO 无法确定记录数时该属性返回 –1。读已关闭的 Recordset 上的 RecordCount 属性将产生错误。
rs.LockType = adLockOptimistic
rs.CursorLocation = adUseClient
rs.CursorType = adOpenDynamic
rs.Open strSql, cn

aspvbjava 2003-03-28
  • 打赏
  • 举报
回复
哦,果然,我定义了一个主键就搞定了
谢谢楼上的兄弟姐妹!!!!
aspvbjava 2003-03-28
  • 打赏
  • 举报
回复
嗯, 我的表确实没有定义主键
必须要定义主键吗?
另外,adopendynamic,adopenforwardonly,adopenkeyset,adopenstatic有关系吗?
我设置的是adopenkeyset
normandj 2003-03-28
  • 打赏
  • 举报
回复
表没有定义主键,我曾经也是试过这样
chenyu5188 2003-03-28
  • 打赏
  • 举报
回复
设置记录对象的CursorLocation 为adUserClient(本地游标)试试。
rs.CursorLocation = adUserClient
rs.open "select * from XXXX",cn,3,3
rs.movelast
rs.movefrist
msgbox "共有:" & rs.recordcount & "条记录!!!"

还有可能就是查询没有找到符合条件的记录。


aspvbjava 2003-03-28
  • 打赏
  • 举报
回复
我记得昨天rs.recordcount还能够取得记录的数目的
aspvbjava 2003-03-28
  • 打赏
  • 举报
回复
55555555告诉我怎么样取得正确的recordcount吧?!
aspvbjava 2003-03-28
  • 打赏
  • 举报
回复
谢谢各位达人,我去修改先
chsegang 2003-03-28
  • 打赏
  • 举报
回复
主要是你的游标类型不支持count
Zedee 2003-03-28
  • 打赏
  • 举报
回复
rs.movelast先
wamlaw 2003-03-28
  • 打赏
  • 举报
回复
使用 RecordCount 属性可确定 Recordset 对象中记录的数目。ADO 无法确定记录数时,或者如果提供者或游标类型不支持 RecordCount,则该属性返回 –1。
Recordset 对象的游标类型会影响是否能够确定记录的数目。对仅向前游标,RecordCount 属性将返回 -1,对静态或键集游标返回实际计数,对动态游标取决于数据源返回 -1 或实际计数。
qqqdong 2003-03-28
  • 打赏
  • 举报
回复
rs.CursorLocation = adUserClient

1,217

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧