我有一个Access 2010 .accdb前端,其中包含一个链接表到SQL Server(2008 R2)中的视图。 令人惊讶的是,在Access中打开它需要大约5-10秒,而在SSMS中执行选择不会在3分钟内完成(之后我只是取消执行)。 可能是什么原因?
修改 我的错误:让我难以忍受的是,我试图只选择第一个(TOP 1 *)记录。 现在我可以继续我的工作,问题只是学术上的: 我认为选择一条记录比选择整个记录集要快。可能是什么原因?
我发现这不仅仅发生在我身上: Why select Top clause could lead to long time cost
答案 0 :(得分:0)
当您在Access中打开表时,Access会请求第一个记录(至少填充第一个屏幕的记录),然后继续在后台加载更多记录。
如果表中有主键,那么在SSMS中简单地执行--window-status ready
应该总是很快。
只有在非索引列上添加ORDER BY子句时,性能才会受到影响,因为必须扫描整个表。