Office中国论坛/Access中国论坛

标题: 关于DAO.OpenRecordset 出错的问题 [打印本页]

作者: zerk    时间: 2008-6-28 11:25
标题: 关于DAO.OpenRecordset 出错的问题
' ***********************************************
Dim Db As DAO.Database
Dim Ry As DAO.Recordset

Set Db = CurrentDb
Set Ry = Db.OpenRecordset("select * from 订单明细表 where 订单id =278 order by 产品id,具体订单号")

MsgBox Ry.RecordCount

Set Ry = Db.OpenRecordset("SELECT 订单明细表.* FROM 订单明细表;")
MsgBox Ry.RecordCount
' ************************************************
结果 第一个 MsgBox 显示 105(条记录),  第二个 MsgBox 只显示 1(条记录),
而实际上应该有9000多条记录, 请达人看看我的代码哪里有问题??

多谢。
作者: ui    时间: 2008-6-28 13:01
Ry .movelast之后呢,对不对
作者: zerk    时间: 2008-6-28 13:58
1.  好象无关 Ry.Movelast!

Dim Db As DAO.Database
Dim Ry As DAO.Recordset
Set Db = CurrentDb

Set Ry = Db.OpenRecordset("select * from 订单明细表")
MsgBox Ry.RecordCount

Set Ry = Db.OpenRecordset("select * from 订单明细表 order by 产品id,具体订单号")
MsgBox Ry.RecordCount

Set Ry = Db.OpenRecordset("select * from 订单明细表 where 订单id =278 order by 产品id,具体订单号")
MsgBox Ry.RecordCount

2.  上面的MsgBox, 第一个是 1, 第二个,第三个都是实际的记录数 (9000多)
   不知道是什么原因? 达人请解惑,多谢!
作者: zerk    时间: 2008-6-28 14:00
说错一点, 第三个是记录数 105个。 搞不懂为什么 第一个记录数是1??
作者: ui    时间: 2008-6-28 15:04
select * from 订单明细表 where true看看是否可以




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3