存储过程:完成一定操作的一组SQL语句,经编译创建并保存在数据库中,用户可通过指定存储过程的名字并给定参数(需要时)来调用执行。
与函数的区别:
(1)存储过程一般是作为一个独立的部分来执行,而函数可以作为查询语句的一部分来调用。由于函数可以返回一个对象,因此它可以在查询语句中位于FROM关键字后面;
(2)一般而言,存储过程实现比较复杂,而函数实现针对性较强;
(3)函数需要用括号包住输入的参数,且只能返回一个值或者表对象,而存储过程可以返回多个参数;
(4)函数可以嵌入在SQL语句中使用,可以在select中调用,存储过程不行;
(5)函数不能直接操作实体表,只能操作内简表;
(6)存储过程在创建时即在服务器上进行了变异,执行速度比函数快