为什么我在程序里查到的记录比数据库里的少??快疯了!!!

tengteng_rock 2003-10-29 06:57:52
代码是这样写的:

Dim SysConn1 As New ADODB.Connection 'Create a ADO Connection
Dim rsnew1 As New ADODB.Recordset 'Create a Recordset

With SysConn1
.ConnectionString = "Provider=MSDASQL.1;Persist Security Info=False;User ID=" & OUserID.Text & ";Data Source=" & ODataSource.Text & ";Password=" & OPassword.Text
.Open
End With

rsnew1.CursorLocation = adUseClient
sql = "SELECT * FROM NODES"
rsnew1.Open sql, SysConn1, adOpenKeyset

Debug.Print rsnew1.RecordCount

将这条sql语句在查询分析器里执行,可以查到224条记录,但通过程序只能查出113条记录。
如果数据库里有338条记录,通过程序只能查出139条记录。
如果数据库里有10条或6条,即比较少的记录,通过程序能全部查出。

我快疯了!!
...全文
179 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
wolfhero 2003-10-30
  • 打赏
  • 举报
回复

rsnew1.MoveFirst
Debug.Print rsnew1.RecordCount
饮水需思源 2003-10-30
  • 打赏
  • 举报
回复
Dim SysConn1 As New ADODB.Connection 'Create a ADO Connection
Dim rsnew1 As New ADODB.Recordset 'Create a Recordset

With SysConn1
.ConnectionString = "Provider=MSDASQL.1;Persist Security Info=False;User ID=" & OUserID.Text & ";Data Source=" & ODataSource.Text & ";Password=" & OPassword.Text
.Open
End With

strsql = "SELECT * FROM NODES"
if rsnew1.state=adstateopen then rsnew1.close
rsnew1.open strsql,sysconn1,adopenkeyset,adlockreadonly

Debug.Print rsnew1.RecordCount
astroboy 2003-10-30
  • 打赏
  • 举报
回复
楼主不会是数据源连错了吧???

关注!!!!!!!!!!!
curd 2003-10-30
  • 打赏
  • 举报
回复
关注
Jackile 2003-10-30
  • 打赏
  • 举报
回复
肯定是你的代码有问题,不要怀疑系统出了什么错误!你把你的限制条件再考虑一下!
skywolfY 2003-10-30
  • 打赏
  • 举报
回复
Dim SysConn1 As New ADODB.Connection 'Create a ADO Connection
Dim rsnew1 As New ADODB.Recordset 'Create a Recordset
SysConn1.ConnectionString = "Provider=MSDASQL.1;Persist Security Info=False;User ID=" & OUserID.Text & ";Data Source=" & ODataSource.Text & ";Password=" & OPassword.Text

SysConn1.CursorLocation=adUseClient ******
Set rsnew1.Activeconntion=SysConn1
sql = "SELECT * FROM NODES"
rsnew1.Open sql
if rsnew!.RecordRount>0 then
Debug.Print rsnew1.RecordCount
endif
CBASE 2003-10-30
  • 打赏
  • 举报
回复
肯定有问题!最好将程序全部贴出,大家看看!!
MSSQL 2003-10-29
  • 打赏
  • 举报
回复
关注。
ygs202 2003-10-29
  • 打赏
  • 举报
回复
哈哈,这个问题很简单啊。
在Debug.Print rsnew1.RecordCount语句前面加上一句rsnew1.movelast肯定可以得到正确的个数。
jpinglee 2003-10-29
  • 打赏
  • 举报
回复
我也遇到过类似的情况
就是查找出来的记录项比实际的少,或者就是没有,或许是系统有关
weill 2003-10-29
  • 打赏
  • 举报
回复
SQL的程序设计有时要考虚时间间隔问题。
类似情况我也碰过,怎么解决的不记得了,好象一次不取那么多。
lwplwp123 2003-10-29
  • 打赏
  • 举报
回复
不知道是怎么回事,
不过强烈关注。
wxgdwz5275 2003-10-29
  • 打赏
  • 举报
回复
我碰到过网页的这个问题,从库里面读的数据比库里面的记录少!也不知道什么原因!
flc 2003-10-29
  • 打赏
  • 举报
回复
没有遇见过
关注
tengteng_rock 2003-10-29
  • 打赏
  • 举报
回复
rsnew1.Open sql, SysConn1, 3,3
试了,也不行
palmkey 2003-10-29
  • 打赏
  • 举报
回复
没碰到过,关注
qjqmoney 2003-10-29
  • 打赏
  • 举报
回复
把这句rsnew1.Open sql, SysConn1, adOpenKeyset改成:
rsnew1.Open sql, SysConn1, 3,3

7,789

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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