我在MS Access中计算了一个报表的执行时间,发现它大约需要37秒才能运行。这让我觉得很奇怪,因为在SQL Server中单独运行SP要快得多(7秒)。在传递查询中使用此SP时,Access在做什么,会增加30秒的执行时间?在Access中是否有任何设置可以切换以减少使其花费如此长时间的原因?
qjp7pelc1#
创建报表不仅包括运行查询,还需要进行大量的格式设置和呈现工作。如果报表有很多页,这将需要一些时间。如果您在报表中包含页数,例如“Page 1 of 12",则可能会执行两次查询,因为这样会发生两次格式化。第一次是确定总页数,第二次是将此数字插入所有页数。若要执行此操作,您可以将表达式="Page " & [Page] & " of " & [Pages]插入TextBox。使用SQL Server事件探查器查看是否发生了意外情况。报表可以非常复杂,可以包含组和子报表,可以包含使用DLookup Function执行其他查询的TextBox中的表达式,可以包含基于其他查询的ListBox和ComboBox等。由于我们不知道你的报告的任何细节,很难给予你一个更好的答复。
="Page " & [Page] & " of " & [Pages]
TextBox
1条答案
按热度按时间qjp7pelc1#
创建报表不仅包括运行查询,还需要进行大量的格式设置和呈现工作。如果报表有很多页,这将需要一些时间。
如果您在报表中包含页数,例如“Page 1 of 12",则可能会执行两次查询,因为这样会发生两次格式化。第一次是确定总页数,第二次是将此数字插入所有页数。若要执行此操作,您可以将表达式
="Page " & [Page] & " of " & [Pages]
插入TextBox
。使用SQL Server事件探查器查看是否发生了意外情况。
报表可以非常复杂,可以包含组和子报表,可以包含使用DLookup Function执行其他查询的TextBox中的表达式,可以包含基于其他查询的ListBox和ComboBox等。
由于我们不知道你的报告的任何细节,很难给予你一个更好的答复。