MS Access:下拉列表太慢

时间:2016-01-18 14:19:17

标签: ms-access ms-access-2010 ms-access-2007 ms-access-2013

我在MS Access(Form)中基于Query(多个表)创建了一个下拉列表,问题是打开下拉列表需要大约一分钟。
如果我打开查询,它会立即打开。

我发现是什么让Drop下降得如此缓慢。这是我在查询中的标准:

In (SELECT [ObjectID] FROM [ObjectDetail] As Tmp GROUP BY [ObjectID] HAVING Count(*)>1) 

如果我从查询中删除此条件,则下拉列表可以完美且立即生效。

所以我的问题是:有没有办法让下拉响应更快,同时仍然保持标准? 这就是我的下拉查询的样子:

SELECT Version_Change.ObjectID, Version_Change.Key FROM Version_Change 
UNION 
SELECT "(All)" as ObjectID,"" as Key FROM Version Change;

1 个答案:

答案 0 :(得分:0)

通过将第二个UNION部分基于复杂查询,然后使用UNION而不是UNION ALL过滤掉重复项,会增加不必要的复杂性。

试试这个:

使用一个字段创建一个虚拟表DummyOneRecord(无关紧要)并添加一条记录。

然后使用(注意UNION ALL)

SELECT Version_Change.ObjectID, Version_Change.Key FROM Version_Change 
UNION ALL
SELECT "(All)" as ObjectID, "" as Key FROM DummyOneRecord;