解决运行procedure很慢但运行procedure内容很快问题

所属分类: 电脑基础 / 电脑常识 阅读数: 101
收藏 0 赞 0 分享
问题描述:

有一次在发布系统到production环境之后,突然发现报表过了好几分钟也刷新不出来,小哥我直接就慌神了。迅速进行各种测试,首先右键报表属性找出报表地址,看看参数是否传对了。找出报表参数之后直接运行procedure,也跑不出来。打开procedure一段一段执行却没问题,执行整个procedure的内容也没问题,但是exec procedure_nm却始终有问题。在开发环境execute procedure,也没问题。于是,开始纠结了。

环境:SQL SERVER 2008, SSRS 2008

解决过程:

仔细思考production环境和开发环境的不同,无非就是开发环境是新搭建的环境,production是已经存在好几年的环境,这次只是对其报表producdure进行了改变,并打了一个补丁修改之前半年的历史数据。后来发现这里就是引起这次事情的主要原因。通过不断的查找问题,发现了开发环境和production里面的表统计信息(在SQL SERVER里面左侧目标浏览器中展开表之后的最下面一个项目:Statistics)不一样。当时只是一个猜测,大量跟新数据会引起production的统计信息过时,而SQL SERVER引擎在解析procedure的时候会根据统计信息制定一系列数据检索计划,就像以前从A市到B市有一条高速公路,现在这条高速公路没用了,SQL SERVER引擎就去寻找其他笨的方法,而统计信息的自动更新只会发生在夜深人静之时。所以便尝试着去申请手动更新production的统计信息。统计信息更新之后,报表能够正常打开了。

解决方法:

USE Database_nm

EXEC sp_UpdateStats

结论:

在大量更新数据之后,会使数据库的统计信息发生变化,继而影响SQL SERVER对SQL的解析。需要重新更新数据库的统计信息,让SQL SERVER参考最新的正确的信息去制定执行计划。
更多精彩内容其他人还在看

电脑用户账户头像在哪里更改?怎么更改?

电脑大家都常用,有一个功能就是电脑的用户账户头像,那时你的名片或是开机启动时候最先出现的,系统默认头像都是自带的,那么电脑用户账户头像在哪里更改?怎么更改?下面小编就为大家详细介绍一下,一起来看看吧
收藏 0 赞 0 分享

电脑开机时弹出:无法打开C:\\boot.ini文件.无法更改操作系统的解决方法

这篇教程是向脚本之家的朋友介绍电脑开机时弹出:无法打开C:\\boot.ini文件.无法更改操作系统的解决方法,遇到同样问题却不知道怎么解决的朋友可以参考本文,希望能对大家有所帮助
收藏 0 赞 0 分享

全新HTTP网页出现错误代码451是怎么来的?

全新HTTP网页出现错误代码451是怎么来的?当你看到错误代码451就表明,这个页面由于法律原因而不可用,而之前由于法律禁止访问的页面错误代码是403,两者有什么区别呢?请看下文详细介绍
收藏 0 赞 0 分享

删除文件提示:文件夹访问被拒绝 需要来自administrator权限执行操作

我们在使用电脑过程中会对一些垃圾文件进行清理与优化,这样可以缓解系统垃圾的堆积,有效的提高系统性能,可是很多用户在删除文件提示:文件夹访问被拒绝 需要来自administrator权限执行操作,怎么办呢?下面小编就为大家介绍解决方法,来看看吧
收藏 0 赞 0 分享

阻止删除共享文件不能删除、如何防止文件被删除、如何禁止删除文件的方法

这篇文章主要介绍了阻止删除共享文件不能删除、如何防止文件被删除、如何禁止删除文件的方法,需要的朋友可以参考下
收藏 0 赞 0 分享

电脑通过设置路由器限制访问指定网站的方法

这篇文章主要介绍了电脑通过设置路由器限制访问指定网站的方法,一些特殊情况需要禁止访问一些特定网站,如何才能实现限制访问指定网站,本文为大家揭晓
收藏 0 赞 0 分享

台式机如何设置桌面按钮从而迅速切换到电脑桌面?

台式机如何设置桌面按钮从而迅速切换到电脑桌面?很多朋友并不知道怎么操作,其实方法很简单的,下面小编就为大家详细介绍一下,一起来看看吧
收藏 0 赞 0 分享

电脑安装软件时提示:系统管理员设置了系统策略,禁止进行此安装

电脑安装软件时提示:系统管理员设置了系统策略,禁止进行此安装,那么怎么解决呢?下面小编就为大家详细介绍一下,不会的朋友快快来学习吧
收藏 0 赞 0 分享

怎么把合并在同一个包裹内的任务栏里的图标分开?

怎么把合并在同一个包裹内的任务栏里的图标分开?很多朋友都碰到几个图标合并在一起的情况,非常麻烦,但又不知道怎么操作,所以今天小编就为大家详细介绍一下,来看看吧
收藏 0 赞 0 分享

电脑打开软件时提示从服务器返回了一个参照的原因分析及解决方法

下面小编为大家介绍电脑打开软件时提示从服务器返回了一个参照的原因分析及解决方法,对于碰到这类问题不知道怎么解决的朋友可以参考本文,希望能对大家有所帮助
收藏 0 赞 0 分享
查看更多