码迷,mamicode.com
首页 > 其他好文 > 详细

存储过程和函数

时间:2016-08-06 19:01:44      阅读:128      评论:0      收藏:0      [点我收藏+]

标签:

  存储过程和函数是事先经过编译并存储在数据库中的一段SQL语句的集合,调用存储过程和函数可以简化开发人员的工作量,减少数据在数据库和应用服务器之间的传输,对提高数据处理效率有好处。存储过程和函数的区别在于函数必须有返回值,而存储过程没有;存储过程可以使用IN、OUT和INOUT类型,而函数的参数只能使用IN类型。

创建、修改、删除存储过程或函数

技术分享

技术分享

   调用存储过程的语法如下:

技术分享

  Mysql的存储过程和函数允许提交和回滚,但是不允许执行Load  data infile语句。如下创建存储过程的实例:

技术分享

技术分享

  存储过程的调用和直接执行SQL的功能是相同的,但是存储过程的好处是逻辑分装在数据库端,调用者不需要了解其中的逻辑,一旦处理逻辑发生改变,只需要修改存储过程即可。

  下面对characteristic进行说明:

  • LANGUAGE SQL:说明下面过程是使用SQL语言编写,系统默认。
  • [NOT]DETERMINISTIC:DETERMINISTIC确定的,即每次输入一样输出也一样。[NOT]DETERMINISTIC:非确定的。
  • {CONTAINS SQL|NO SQL|READS SQL DATA|MODIFIES SQL DATA}:CONTAINS SQL:表示子程序不包含读写数据的语句;NO SQL:表示子程序不包含SQL语句;READS SQL DATA:表示子程序包含读数据的语句;MODIFIES SQL DATA:表示子程序包含写数据的语句。默认是CONTAINS SQL。
  • SQLSECURITY{DEFINER|INVOKER}:用来指定子程序该使用创建子程序的许可来执行,还是使用调用者的许可来执行。默认是DEFINER。
  • COMMENT ‘STIRNG‘:存储过程或函数的注释。

  删除存储过程和函数的具体语法

技术分享

 

存储过程和函数

标签:

原文地址:http://www.cnblogs.com/wxgblogs/p/5744476.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!