Mysql存储过程从0开始(上)

2017-01-09 14:08:54来源:oschina作者:思梦PHP人点击

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;


Mysql存储过程从0开始(上)


(3)删除存储过程


drop procedure sp_name --存储过程的名称


DROP PROCEDURE --删除所有,别轻易用


6、定义的变量只是作用在存储过程里面,超出就没了,下图为例,也就是在end之后就没了。


Mysql存储过程从0开始(上)


7、inout的操作


Mysql存储过程从0开始(上)


当你调用这个存储过程的时候,你不能直接将数据放在方法里面,你要设置这个变量的值,然后把这个变量放进去


如果直接放会报错Mysql存储过程从0开始(上)


应该是这样调用


Mysql存储过程从0开始(上)


以上只是一部分,接下来还会给大家更新,大家可以常来看看!

最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台