首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

储存过程运行时间超长,该如何解决

2013-12-26 
储存过程运行时间超长19万的数据一个存储过程运行了快四个小时还没结束正常吗又查看不了数据是否更新了--u

储存过程运行时间超长
19万的数据  一个存储过程运行了快四个小时还没结束   正常吗   又查看不了数据是否更新了
--update [NumsData]  set ShowHistory= dbo.GetHistory(IssueNum,[Name],NumSum,Result,History) where ShowHistory is null
update [NumsData]  set Showds= dbo.Getds(IssueNum,[Name],NumSum,Result,History) where Showds is null
上面是--号后是没改前的  下面一行是改了现在正在运行的   以前运行正常  但没一下更新这么多数据  所以不知道这次这么长时间是不是正常  
[解决办法]

引用:
Quote: 引用:

这么长时间肯定不对的。
如果服务器使用现在中上硬件,并且这一列数据时数字型的话,这么点点数据应该是秒杀的。
你把函数代码贴出来看看,应该是函数里面有问题。


函数和储存过程都是一直在用的    今天运行的只是把储存过程里需要更新的列名改了下  别的什么都没改   都快六个小时候了  
那很有可能那些列没有索引,导致表扫描
[解决办法]
问题解决了不,我觉得应该是阻塞的问题,另外,dbo.Getds这个函数,也有可能导致慢,还有最好在Showds列上建个左右试试。

热点排行