各位大侠,小弟在运行一VBA时,里面有两句SQL,前面一句可以实现预期结果,说明相应的链接没问题呀,可后一句却不行,但这一句直接放在access里面却可以出结果,为啥呀??
在VBA中为:
sa = "select [Part_No] from [" & mytblName_AVL & "] as tmp group by [Part_No],[Project] having (count(*)>1 and [Project] like '*UMA')"
sSq = "delete * from " & mytblName_AVL & " where (((" & mytblName_AVL & ".Part_No) in (" & sa & ")) and ((" & mytblName_AVL & ".Project) like '*UMA'))"
CNN.Execute sSq ‘可以运行下去却相应的预期结果却没实行,没删除应删除的数据、、、、
mytblName_AVL为一变量了
在Access里面把mytblName_AVL改成对应的表名却可以出现结果,改成删除查询后可以删除数据、、、、
你的SQL语句就查不到结果嘛,结果是空的,你先这条一条整明白吧。
delete * from HC where (((HC.Part_No) in (select [Part_No] from [HC] as tmp group by [Part_No],[Project] having (count(*)>1 and [Project] like '*UMA'))) and ((HC.Project) like '*UMA'))
hwc2ycy 发表于 2013-3-4 16:13
你的SQL语句就查不到结果嘛,结果是空的,你先这条一条整明白吧。
delete * from HC where (((HC.Part_No) ...
不是红色那部分呀?!我嵌的应是下面绿色这部分呀、、、
delete * from HC where (((HC.Part_No) in (select [Part_No] from [HC] as tmp group by [Part_No],[Project] having (count(*)>1 and [Project] like '*UMA'))) and ((HC.Project) like '*UMA'))
我把整句放到access里面可以整出来呀,且可以转成图片上的呀、、、