Sql Excel 2010数据->&引用;“刷新全部”;缓慢的

Sql Excel 2010数据->&引用;“刷新全部”;缓慢的,sql,excel,ms-access,Sql,Excel,Ms Access,目前,我正在使用Excel电子表格,该电子表格至少对外部Microsoft Access*.mdb文件进行10次数据库查询。对于我公司从事的每个项目,我们都有一个与该项目相关的特定excel文件,因此我们有数百个这样的文件。通常,当分析师打开数据选项卡并单击“全部刷新”时,刷新会在一两分钟内完成;但是,对于给定excel文件的新项目,至少需要一个小时才能完成刷新。以下是其中一个连接字符串的示例: DSN=MS Access Database;DBQ=W:\Projects\Analysis\pr

目前,我正在使用Excel电子表格,该电子表格至少对外部Microsoft Access*.mdb文件进行10次数据库查询。对于我公司从事的每个项目,我们都有一个与该项目相关的特定excel文件,因此我们有数百个这样的文件。通常,当分析师打开数据选项卡并单击“全部刷新”时,刷新会在一两分钟内完成;但是,对于给定excel文件的新项目,至少需要一个小时才能完成刷新。以下是其中一个连接字符串的示例:

DSN=MS Access Database;DBQ=W:\Projects\Analysis\project.mdb;DefaultDir=W:\Projects\Analysis\Analysis;DriverId=25;FIL=MS Access;MaxBufferSize=2048;PageTimeout=5;
下面是相关联的查询:

SELECT Field.FieldNumber, Field.FieldName, Field.GroupMnemonic, Field.ClientFieldID
FROM Field Field
ORDER BY Field.FieldName
我花时间研究了各种网站,讨论缓慢的excel问题,如;然而,这些网站更多地处理计算和VBA,而我怀疑性能问题在access文件中的某个地方。是否有人对如何排除故障和解决此问题有任何建议?蒂亚

更新:正如JohnFx在下面的回答中所建议的,我检查了这些查询,发现它们没有确定的密钥,因此在Microsoft Access数据库生成中添加了如下密钥:

CREATE UNIQUE INDEX PIndex ON [myTable] ([KEY])

作为问题的一部分,直接在Access to rule Excel in或out中单独运行查询。如果查询在访问中仍然很慢,请考虑在正在排序或过滤的任何列上添加索引。< /P>表有多大?如果在Access中以本机方式运行查询,需要多长时间?是网络驱动器吗?是否存在任何网络问题?您可能想看看Microsoft不受支持的Jet优化工具:是的,问题在于Access。需要解决为什么执行第一个查询需要这么长时间的问题。谢谢!发布SQL,有人会帮忙的。