Office中国论坛/Access中国论坛

标题: 向高手们请教一个链接表查询的问题 [打印本页]

作者: cming    时间: 2005-1-5 22:33
标题: 向高手们请教一个链接表查询的问题
高手们,请教啦!

Dim myop As String

Dim mycount As Integer

Dim mydb As Database

Dim myrst As Recordset

Set mydb = CurrentDb()

myop = DLookup("op_no", "dbo_work_op_card", "card_no='" & card_no & "'")

Set myrst = mydb.OpenRecordset("select distinct item_length from dbo_work_op_prod where op_no='" & myop & "'")

mycount = myrst.RecordCount

'mycount 结果为1,正确的应为3

Set myrst = mydb.OpenRecordset("select distinct item_length from work_op_prod where op_no='" & myop & "'")

mycount = myrst.RecordCount

'mycount 结果为3

不知何故用链接表的mycount 结果为1,正确的应为3。链接表上符合条件的item_length查过确为3条记录。

注:work_op_prod为dbo_work_op_prod用生成表查询而得的本地表,两表记录应是完全一致的。



我还试过Set myrst = mydb.OpenRecordset("select distinct item_length from work_op_prod where op_no='" & myop & "'")mycount = myrst.RecordCount'mycount 结果为3 但Set myrst = mydb.OpenRecordset("select * from work_op_prod where op_no='" & myop & "'")mycount = myrst.RecordCount却返回1



我也试过用调试跟踪,再将跟踪结果copy到新建的一个查询中,运行后也得到三条记录,但RecordCount却返回1,为什么呢?
作者: cming    时间: 2005-1-8 17:23
这么多高人,竟一个都没有能回答这个问题吗?来错地方了?
作者: 阿罗    时间: 2005-1-9 06:25
好像还没彻底排查所有情况呢。先把myop = DLookup("op_no", "dbo_work_op_card", "card_no='" & card_no & "'")注释掉,然后把Set myrst = mydb.OpenRecordset("select distinct item_length from dbo_work_op_prod where op_no='" & myop & "'")和Set myrst = mydb.OpenRecordset("select distinct item_length from work_op_prod where op_no='" & myop & "'")中的myop替换成某个实际数值,再核查一下错误到底出在什么地方。




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