(1)一般来说,存储过程实现的功能要复杂一点,而函数的实现的功能针对性比较强。
(2)对于存储过程来说可以返回参数,而函数只能返回值或者表对象。
(3)存储过程一般都是作为一个独立的部分来执行,而函数可以作为查询语句的一个部分来调用,由于函数可以返回一个表对象,因此它可以在查询语句中位于FROM关键字的后面。
(4)当存储过程和函数被执行的时候,SQL Manager会到Procedure cache中去取相应的查询语句,如果在procedure cache里没有相应的查询语句,SQL Manager就会对存储过程和函数进行编译。