存储过程和存储函数区别

存储过程说白了就是把经常使用的SQL语句或业务逻辑封装起来,预编译保存在数据库中,当需要的时候从数据库中直接调用,省去了编译的过程.提高了运行速度;同时降低网络数据传输量 

1、返回值上的不同
存储函数将向调用者返回一个且仅返回一个结果值。
存储过程将返回一个或多个结果集(函数做不到这一点),或者只是来实现某种效果或动作而无需返回值。
2、调用方式上的不同
存储函数嵌入在sql中使用的,可以在select中调用,就像内建函数一样,比如cos()、hex()
存储过程只能通过call语句进行调用
3、参数的不同
存储函数的参数类型类似于IN参数
存储过程的参数类型有三种、IN参数、OUT参数、INOUT参数

原文地址:https://www.cnblogs.com/wzj4858/p/7910328.html