51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 4564|回复: 5
打印 上一主题 下一主题

[原创] 求高手,如何用recordset获取数据库查询出来的行数......

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2012-7-27 10:07:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Do while 142858<=i and i<=1428571
' i=i+int(199999*rnd) //随机生成数
msgbox i
   j=i*70
Set Rst1=createobject("ADODB.Recordset")
Rst1.Open "INSERT INTO test (prefix,awb) VALUES ('784','"&j&"')",conn //将随机生成数添加进数据库表
   Rst1.Open "select * from test where prefix='784' and awb='"&j&"'",conn //在数据库中查询随机生成数

  msgbox Rst1.RecordCount //返回查询结果的行数

我原意是想返回数据库里的行数,但是结果却是 -1,但数据库里的行数 >1,敢问哪位大虾能帮我解疑!!!!~
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

  • TA的每日心情
    慵懒
    2019-4-10 17:57
  • 签到天数: 35 天

    连续签到: 1 天

    [LV.5]测试团长

    2#
    发表于 2012-7-27 12:40:35 | 只看该作者
    LZ这样写试试看:
    Rst1.Open "select count(*) from test where prefix='784' and awb='"&j&"'",conn,1,1
    iCount = Rst1.Fields(0)
    msgbox iCount
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    3#
     楼主| 发表于 2012-7-27 14:32:54 | 只看该作者
    回复 2# shingo0109

    不行,Field(0)返回的值是select数据库后,首行的第一个字段的value
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2019-4-10 17:57
  • 签到天数: 35 天

    连续签到: 1 天

    [LV.5]测试团长

    4#
    发表于 2012-7-27 14:36:31 | 只看该作者
    回复 3# sanbananzihan


      要用select count(*) from, count(*)就是计数的啊
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5#
     楼主| 发表于 2012-7-27 14:48:06 | 只看该作者
    回复 2# shingo0109

    已找到方法,recordset.field.count是返回记录的列数,我是用recordset.recordcount来返回行数,并修改了sql的conn后的数字,把1改为3,因为1表示指针只能往前,这样在数据库统计时,返回的结果是-1,而3表示自由指针
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    6#
     楼主| 发表于 2012-7-27 14:53:05 | 只看该作者
    回复 4# shingo0109

    额额,了解,这也是一种方法,现在发现这个问题的解决方法很多,基础差,真不好意思......
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-17 09:31 , Processed in 0.065892 second(s), 25 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表