设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 1638|回复: 8
打印 上一主题 下一主题

[ADO/DAO] ADO的一个小问题

[复制链接]
1#
发表于 2006-7-3 07:14:00 | 显示全部楼层
fan0217  你好

请教DAO中引用窗体的日期作为查询准则如何写?

帮我改改:

Dim M As DAO.Recordset

Set M = CurrentDb.OpenRecordset("SELECT 订单明细.订单ID, 订单明细.产品ID, 订单.订购日期, Sum([数量]) AS 出量 " _
& "FROM 订单 INNER JOIN 订单明细 ON 订单.订单ID = 订单明细.订单ID " _
& "GROUP BY 订单明细.订单ID, 订单明细.产品ID, 订单.订购日期;")
& "HAVING (((订单.订购日期)>=[forms]![A先先]![订购开始日期] And (订单.订购日期)<=[forms]![A先先]![订购终止日期]))<>0));")
'M.Filter = "[订购日期] =[forms]![A先先]![订购开始日期]"
Set M = M.OpenRecordset
Do While Not M.EOF

Debug.Print M("订购日期")
Debug.Print M("产品ID")
Debug.Print M("出量")
M.MoveNext
Loop
2#
发表于 2006-7-3 19:51:00 | 显示全部楼层


我试出来了:

Dim M As DAO.Recordset

Set M = CurrentDb.OpenRecordset("SELECT 订单明细.订单ID, 订单明细.产品ID, 订单.订购日期, Sum([数量]) AS 出量 " _
& "FROM 订单 INNER JOIN 订单明细 ON 订单.订单ID = 订单明细.订单ID " _
& "GROUP BY 订单明细.订单ID, 订单明细.产品ID, 订单.订购日期;")
M.Filter = "[订购日期]>=#" & Format([Forms]![A先先]![订购开始日期], "yyyy-mm-dd") & "# and [订购日期]<=#" & Format([Forms]![A先先]![订购终止日期], "yyyy-mm-dd") & "# and [产品ID]=" & [Forms]![A先先]![ID] & ""
Set M = M.OpenRecordset
Do While Not M.EOF



Debug.Print M("订购日期")
Debug.Print M("产品ID")
Debug.Print M("出量")
M.MoveNext
Loop


但速度很慢,帮我看看问题在哪?
3#
发表于 2006-7-3 20:15:00 | 显示全部楼层
我的后端是SQL不好上传.

我想再加

& "&HAVING [订购日期]>#6/1/2006#"_

想来提高速度就提示:语法错误(操作符丢失) 在查询表达式'盯购日期&'中

不好意思,第一次玩DAO,有点晕.
4#
发表于 2006-7-3 20:21:00 | 显示全部楼层
直接基于查询打开记录集,又没问题,晕呀.

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-6-10 04:35 , Processed in 0.087333 second(s), 27 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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