我正在运行SSRS 08.我的查询有四个参数(所有varchars)。我可以通过管理工作室运行查询,并在10秒内运行。如果我在Visual Studio的查询设计器中运行查询,我会获得相同的性能。查询运行速度很快,但报告渲染缓慢:如何调试?
但是,如果我尝试预览报告或实际运行报告,则实际报告有时需要5分钟以上。我运行了一个跟踪,并且查询似乎很快进入/离开SQL服务器端。我怎样才能找到我失去这种表现的地方/原因?我试过/检查到目前为止以下:
- 没有图像在报告中引用
- 存储过程的不分组/排序外
- 由于它是我用同样的重建了一个简单的报告结果(以检查它是否不是损坏的报告的问题)。
- 运行SQL跟踪,当我执行报告,以确保查询没有问题
基础上提出了一些建议之前,我重写了像这样
-- ...
-- Note: @Parameter is a varchar(40)
-- ...
declare @Var as varchar(40)
set @[email protected]
select * from table where [email protected]
使用变量而不是参数查询跟踪追踪,这在查询方面不是问题。
您可以运行下面的查询找出是开销: SELECT名称,TimeDataRetrieval,TimeProcessing,TimeRendering \t,TimeDataRetrieval + TimeProcessing + TimeRendering AS TOTALTIME,格式,参数,用户名,TimeStart FROM DBO执行日志L WITH(NOLOCK) \t INNER JOIN dbo.Catalog R WITH(NOLOCK)ON L.ReportID = R.ItemID WHERE Name ='' - 报告名称的更新参数 AND格式>'' ORDER BY名称 时间用于查询数据检索,报告处理和呈现。如果所有措施都正常,那么问题在别的地方,而不是报告服务 – niktrs