mysql存储过程的概念和函数的区别(一)

1,mysql存储过程的概念:
   存储在数据库当中可以执行特定工作(查询和更新)的一组SQL代码的程序段。

2,与自定义函数的区别:
   (1)自定义函数有且只有一个返回值,和普通函数一样,可以直接在表达式中调用。
   存储过程可以没有返回值,也可以有任意个输出参数,必须单独使用。

   (2)2者的本质都一样,但函数有如只能有一个返回值变量的限制。而存储过程可以有多个返回。
   函数可以嵌入到SQL中使用,可以在select中调用,而存储过程不行。

   (3)函数的限制比较多,比如不能使用临时表,只能用表变量,还有一些函数都不能用等。
   而存储过程的限制就比较少。

   (4)一般来说,存储过程实现的功能复杂点,函数实现的功能针对性比较强。
        存储过程可以返回参数,而函数只能返回值或则表对象。


    (5)存储过程一般作为一个独立的部分来执行,
         函数则作为查询语句的一部分来调用,由于函数可以返回一个表对象,因此它可以
         在查询语句中位于FROM关键字的后面。


猜你喜欢

转载自zhangguorong123.iteye.com/blog/2152100