VB中关于adodb.recordset的recount的问题 10

首先引用ado2.8然后在代码中使用,遇到的问题是这样的比如第一种情况:sql="select*from表"rs.opensql,conn,1,3这是第一种情况,rs.r... 首先引用ado2.8
然后在代码中使用,遇到的问题是这样的
比如
第一种情况:
sql="select * from 表"
rs.open sql,conn,1,3

这是第一种情况,rs.recount要嘛为0,要嘛就是正数。

而第二种情况
sql="select sum(字段1) from 表" 或者sql="select 字段 from 表 group by 字段"
rs.open sql,conn,1,3
像这种带个函数的查询,rs.recount都是-1,这是为什么。如果这种情况我想知道有多少条记录,不得一条一条去循环数?
展开
 我来答
zdingyun
2015-06-11 · 知道合伙人软件行家
zdingyun
知道合伙人软件行家
采纳数:15429 获赞数:48173
1982年上海业余工业大学化工系毕业 现退休

向TA提问 私信TA
展开全部

sql = "select 字段1 from 表 group by 字段1"

    sql = "select gyh_riqi,sum(shuju1) as hj from jishijilu where gyh_riqi='1000-061210' group by gyh_riqi"
    sql = "select gyh_riqi,sum(shuju1) as hj from jishijilu  group by gyh_riqi"
    sql = "select gyh_riqi as hj from jishijilu  group by gyh_riqi"

以上三句代码是经测试无问题的写法。

追问
我没有问SQL语言咯。
追答
这说明你代码运行的环境有问题,或许是未引用必要的系统dll文件。建议在VB6.0新建一个数据工程,再使用你的代码。
syx54
2015-06-11 · TA获得超过7378个赞
知道大有可为答主
回答量:6567
采纳率:83%
帮助的人:2730万
展开全部
返回 -1,是说明 没有记录,记录数为0
你说的:sql="select sum(字段1) from 表"
rs.recount 不会-1的,应该是 1
追问
确实是这样的。debug.print rs.recout确实显示-1,可是是有记录的,至少用rs.fields(0)都是可以取到值的。
追答
那你还是好好找原因。rs.fields(0)都是可以取到值,rs.recout确实显示-1,不是矛盾的?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式