MySQL----存储过程

定义:
   存储过程可以看成是对一系列 SQL 操作的批处理,类似自建的函数。
 
使用存储过程的好处:

  (1)代码封装,保证了一定的安全性;
  (2)代码复用;
  (3)由于是预先编译,因此具有很高的性能。

 
创建存储过程:
    命令行中创建存储过程需要自定义分隔符,因为命令行是以 ; 为结束符,而存储过程中也包含了分号,因此会错误把这部分分号当成是结束符,造成语法错误,要用delimiter转换结束符。
    存储过程的形参包含 in、out 和 inout 三种参数,in表示参数只读,out表示参数需要传回。
    给变量赋值都需要用 select into 语句。
    每次只能给一个变量赋值,不支持集合的操作。
    举个例子:
delimiter //
create procedure myprocedure( out ret int ) 
begin 
    declare y int;
    select sum(col1) from mytable into y; 
    select y*y into ret;
end // 
delimiter ; 
call myprocedure(@ret); 
select @ret;

 

posted @ 2018-03-17 17:38  IvanB.G.Liu  阅读(109)  评论(0编辑  收藏  举报