Mysql存储过程从0开始(上)
1、首先你要明白,mysql也是一种语言,他也可以编写程序,也是支持逻辑判断,if,elseif,else,switch,while等等的判断
2、mysql赋值一个变量的值操作:set @a = 1; 查看这个变量为select @a;
3、当你创建存储过程的时候你要先选择Mysql的数据库,然后才能进行操作,比如创建
(1)create procedure hanshuming() //方法体: select concat(@a,' world');
concat是链接字符串,set @a="Hello";
(2)调用是call hanshuming();
4、简单的入门的存储过程小例子
mysql > DELIMITER // //首先你要转义,防止mysql把你的语句当成sql语句执行
mysql > CREATE PROCEDURE proc1 --proc1存储过程名
-> (IN parameter1 INTEGER)
-> BEGIN
-> DECLARE variable1 CHAR(10); --declare 是命名变量
-> IF parameter1 = 17 THEN
-> SET variable1 = 'birds';
-> ELSE
-> SET variable1 = 'beasts';
-> END IF;
-> INSERT INTO table1 VALUES (variable1);
-> END
-> //
mysql > DELIMITER ;
5、查看当前的数据库下面的存储过程
(1)show procedure status where db='数据库名'\G; --\G的意思是格式化
(2)查看当前存储过程的详细的信息
show create procedure 数据库名.存储过程名\G;
(3)删除存储过程
drop procedure sp_name --存储过程的名称
DROP PROCEDURE --删除所有,别轻易用
6、定义的变量只是作用在存储过程里面,超出就没了,下图为例,也就是在end之后就没了。
7、inout的操作
当你调用这个存储过程的时候,你不能直接将数据放在方法里面,你要设置这个变量的值,然后把这个变量放进去
如果直接放会报错
应该是这样调用
以上只是一部分,接下来还会给大家更新,大家可以常来看看!