要快,存储过程是预先编译好的,你在页面写SQL语句,服务器在执行的时候,先连接数据库,然后把你的SQL语句给数据库,数据库对你的SQL语句进行编译,然后从数据库里找出数据发送回服务器端
,服务器进行整理后,把数据给客户端,客户在浏览器就能看到数据了,而存储过程在数据库里写好后,但是就已经便宜好了,你发送存储过程名给数据库,数据库根据名字找到它,根据它的定义直接就去数据库找数据了,所以要快一点

解决方案 »

  1.   

    对于只执行insert delete update这些简单的语句,我觉得没必要写到存储过程中,执行速度理论上会快一些,但由于语句太简单,编译也花不了多少时间的,执行速度应该是没多大区别的,如果每条insert delete update的语句都写成存储过程,那你的代码量就会大大的增加,开发速度减慢,而且不易于维护
      

  2.   

    楼主可以搜搜 sql 存储过程优化器 看看那个东西你就明白了。
      

  3.   

    存储过程都放在了数据库的告诉缓存里面,你说会不会快呢,而且传输的数据量小了,传输存储过程的名字就可以了,不用传出一大串sql了