今天碰到一个很奇怪的问题,关于存储过程,留下以后用

本文探讨了在程序中执行存储过程时遇到的效率问题,指出可能的原因是执行计划过期,并提出了解决方法。通过修改存储过程名称,可以避免执行计划过期,提高执行效率。

 今天碰到一个很奇怪的问题,关于存储过程,几下以后用
一个存储过程。内容就不写了。
问题:在查询分析器上执行速度很快,几乎几秒钟就可以完成!而在程序里执行需要很久,甚至不能完成!(已排除代码问题)还导致浏览器卡死。

解决方法:修改存储过程名称。
猜想:应该是存储过程执行过期导致,存储过程是预编译的, 在第一次执行的时候, 会生成执行计划, 以后执行的时候, 会使用这个执行计划(除非存储过程侯或者显示指定重新编译), 而不是每次执行时都去生成执行计划
当存储过程涉及的对象结构调整, 或者相关的数据产生了很大变化, 这可能导致原来的计划不适合当前的现状(执行计划过期), 这种情况下应该重新编译存储过程(可以通过 sp_recompile来标记要重新编译的存储过程)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值