mysql的存储过程与函数
作者:bin存储过程和函数是事先经过编译,并存储在数据库中的一段sql语句集合
一、使用delimiter
更改mysql命令行的结束符
使用delimiter 定义一个结束符,我们通常会使用$$ 或者\\
mysql> delimiter $$
这样在输入;号时,就不会立即执行sql语句了。需要输入$$表示结束,才会执行sql语句。
关闭delimiter的结束符定义,使用原来的;号作为结束符
mysql> delimiter ;
二、存储过程
定义一个简单的存储过程
首先使用delimiter $$定义结束符,方便我们编写存储过程
mysql> delimiter $$
然后编写创建语句
mysql>create procedure my_test(a int, out c varchar(50))
     >begin
     >select group_concat(id) into c from table1 where table.a=a;
     >end;
     >$$;
最后不要忘记关闭结束符
mysql>delimiter;
存储过程的使用
mysql>call my_test(1,@a);
三、函数
定义一个简单的函数
首先使用delimiter $$定义结束符,方便我们编写存储过程
mysql> delimiter $$
然后编写创建语句
mysql>create function my_sum(a int, b int)
     >returns int
     >begin
     >return a + b;
     >end;
     >$$;
最后不要忘记关闭结束符
mysql>delimiter;
函数的使用
mysql>select my_sum(1, 2);