不清楚为什么这个查询崩溃Access

时间:2015-06-09 19:42:42

标签: sql vba ms-access access-vba ms-access-2010

我有一个嵌套查询的查询,如下所示:

select table1.name, table1.address 
       from table1 
       where table1.year=[forms]![form1]![year] 
             and table1.name not in 
             (select table2.name 
                     from table2 
                     where table2.year=[forms]![form1]![year])

每次都会崩溃Access。我做了一件不允许的事情吗?

1 个答案:

答案 0 :(得分:0)

通过使用VBA构建我的查询,我能够让它工作。

基本上我写了一个设置rs = db.OpenRecordset的函数("我的子查询")

然后遍历rs,并将其附加到如下字符串:

string=""
rs.MoveFirst
Do Until rs.EOF
string=string & "'" & rs.Fields(0) & "', "
rs.MoveNext
loop
if string <> "" then string=Left(string,len(string)-2)

最后:

strSQL="select table1.name, table1.address from table1 where table1.year=forms]![form1]![year] and table1.name not in (" & string & ")"

然后在我的afterupdate事件中

me![subform].form.Recordsource=myfunction()

现在一切正常