Office中国论坛/Access中国论坛

标题: [讨论]在ACCESS中使用DAO时,使用查询的问题。 [打印本页]

作者: qfyyc    时间: 2003-12-3 22:38
标题: [讨论]在ACCESS中使用DAO时,使用查询的问题。
我的SQL语句不太好,于是想了一个懒办法,我先在ACCESS查询生成器中生成一个查询,然后将其SQL语句复制出来,帖在DAO的代码中,可以吗?
我做了这样一个查询:

其SQL语句为
SELECT 药方.[药方 ID], 药方.科室, Sum(销售.实收) AS 实收之Sum
FROM 药方 INNER JOIN 销售 ON 药方.[药方 ID] = 销售.[药方 ID]
GROUP BY 药方.[药方 ID], 药方.科室;
我想把这个查询的内容保存在一个记录集里,这样行吗?
strSQL = "SELECT 药方.[药方 ID], 药方.科室, Sum(销售.实收) AS 实收之Sum FROM 药方 INNER JOIN 销售 ON 药方.[药方 ID] = 销售.[药方 ID] GROUP BY 药方.[药方 ID], 药方.科室"
Set rst = db.OpenRecordset(strSQL)
结果此记录集里没记录!


另:
我想找到药方ID的值是yfh的记录,这样写对吗?
yfh = rst2.Fields(0)
fieldS(o)是第一个字段“药方ID对不?其类型为自动编号

Set rst1 = db.OpenRecordset("SELECT BD报表数据.* FROM BD报表数据 WHERE BD报表数据.[药方 ID]= '&yfh&'")
其提示,表达式中数据类型不匹配。
请问‘&yth&’如此引用后,其类型还是string。与前边定义的还一样吗?需要转换吗?





D:\我的文档\My Pictures\qd.gif
[此贴子已经被作者于2003-12-3 14:53:14编辑过]


作者: qfyyc    时间: 2003-12-3 22:54
[attach]2674[/attach]
作者: zhengjialon    时间: 2003-12-3 23:53
1.这可能是SQL语句不对,什么空格啦都会出错,仔细调试一下。
2.不要用&

作者: qfyyc    时间: 2003-12-4 04:38
关于变量引用的问题,我发现了,要在两个&与变量名之间插入一个空格。“& yfh &"而不是"&yfh&"
真麻烦,这点小毛病让我找了一个上午。
上边那SQL,并没有提示错误。只是记录集里是空的。我是直接用ACCESS的查询设计器做好后,自制出来的。


[此贴子已经被作者于2003-12-3 20:40:42编辑过]






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