-- 9.储存过程使用
-- 资料:http://www.cnblogs.com/wangjikun/p/5685489.html 储存过程案例
-- 创建表
CREATE TABLE test(
ID INT PRIMARY KEY AUTO_INCREMENT ,
test_name VARCHAR(20),
test_num INT);
-- 编写储存过程
DELIMITER $ /*(意思是mysql语句的结尾换成以$结束,mysql默认是;结束)*/
CREATE PROCEDURE pro1(IN n INT) /*创建一个名为pro1的存储过程,调用存储过程时,可以通过输入参数n来指定循环的次数*/
BEGIN /*开始*/
DECLARE num001 INT;
DECLARE num002 INT; /*定义num001和num002的数据类型为int*/
SET num001 = 1 , num002 = 10; /*设置num001=1,num002=10*/
WHILE n - num001 >= 0 DO /*当num001小于等于n时执行下面的操作*/
INSERT INTO test(test_name,test_num)
VALUES(CONCAT("zhangsan" , num001) , num002); /*在test表中插入数据test_name=zhangsan+num001,test_num=num002,contat意为将张三和num001连起来*/
SET num001=num001+1,num002=num002 + 2; /*设置num001=num001+1,num002=num002*2*/
END WHILE; /*当num>100时,不再执行插入操作循环结束*/
END $ /* 存储过程结束*/
DELIMITER ; /*(mysql语句的结尾换成以;结束)*/
-- 调用储存过程
CALL pro1(100) ;
-- 删除表、储存过程
DROP TABLE test;
DROP PROCEDURE pro1;
MYSQL面试--存储过程(六)
最新推荐文章于 2024-04-16 19:20:49 发布