日期:2014-05-18  浏览次数:20619 次

为什么我在程序中不用存储过程比用存储过程还快?
我在程序中用   select   *   from   tablename   where   列名=?     语句用了0.4s
而我创建一个存储过程时,在程序中调用时       用了0.9s.
这是为什么?




------解决方案--------------------
你先执行的哪个?
------解决方案--------------------
多测试几次, 计算平均速度.

------解决方案--------------------
分别执行100次,看看平均是多少,而且存储过程就一条语句影响不会非常大的,但是还是建议多使用存储过程
------解决方案--------------------
根本就快不了,就一句还是简单的,存储过程若是处理较多的操作,你传递给数据库的信息也是这么多,那时就快了,因为你不写要一次次从前台传给数据库,而且传递的信息也多
------解决方案--------------------
测试环境不完全相同导致。

多试验几次。

可能你执行SP时,系统还有其他的任务需要处理。
------解决方案--------------------
存储过程的执行效率是因为他将语句进行了编译,其它没有什么措施,你编译一名如此简单的语句,但同时自身需要解释,我看不出可以提高什么效率,测试好了让大家分享吧