4

我正在一个继承的应用程序中处理一个非常大的查询。这是一个大型插入查询,需要 4 个表,记录数超过 100 万条。我知道,我也希望在 SQL-server 中有这个,但是这个客户没有基础设施来做到这一点:-)

这个查询已经工作了一年多。然而,源表继续增长,上周它抛出了可怕的“系统资源不足”错误。无赖……!

我认为可以优化此查询。在 MySQL 中工作时,我会使用 explain-command 来查看可能发生优化的位置。Access 中是否有类似的功能?好像找不到啊。。。。

亲切的问候,

保罗

4

1 回答 1

4

可能 Jet ShowPlan 最接近您想要的。您必须设置一个注册表项。然后查询计划信息被转储到一个名为 SHOWPLAN.OUT 的文本文件中。您可以在 TechRepublic 上阅读这篇文章中的详细信息:使用 Microsoft Jet 的 ShowPlan 编写更高效的查询

还可以尝试性能分析器向导。您可以要求它单独检查您的查询,也可以要求它检查该查询使用的表或其他查询。

如果您最近没有压缩数据库,请查看这是否会提高性能。压缩还会更新索引统计信息,使引擎能够为查询计划做出更好的决策。

于 2012-04-11T05:54:03.687 回答