在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
本文实例讲述了mysql存储过程用法。分享给大家供大家参考,具体如下: 概述: 简单的说,就是一组SQL语句集,功能强大,可以实现一些比较复杂的逻辑功能,类似于JAVA语言中的方法; 存储过程跟触发器有点类似,都是一组SQL集,但是存储过程是主动调用的,且功能比触发器更加强大,触发器是某件事触发后自动调用; 示例 DELIMITER // CREATE PROCEDURE proc (IN num INT) BEGIN SELECT * FROM v9_qd_account limit num; END // DELIMITER ; 执行: SET @p_in=5; CALL proc(@p_in); 或者 CALL proc(5); 循环 DECLARE num int default 5; SET num = 1; SET num = num + 1; DELIMITER // CREATE PROCEDURE proc(IN sname VARCHAR(20),IN pwd VARCHAR(5),IN qd INT,IN start INT,IN end INT) begin DECLARE var INT; DECLARE myname VARCHAR(30); SET var=start; while var<end do SET myname = CONCAT(sname,LPAD(var,3,'0')); insert into v9_qd_account (storename,password,qudao,regdate) value(myname,md5(pwd),qd,UNIX_TIMESTAMP()); SET var=var+1; end while; end // DELIMITER ; 调用 CALL proc('test','123456',1,1,21); 查看 SHOW PROCEDURE STATUS LIKE 'C%' \G; 查看以字母C开头的存储过程 SHOW CREATE PROCEDURE proc \G; 查看状态和创建语句 information_schema.Routines 中查看 删除 DROP PROCEDURE IF EXISTS proc; DROP FUNCTION mytest; 点拨 如果参数中有中文可以这样 CREATE PROCEDURE useInfo(IN u_name VARCHAR(50) character set gbk,OUT u_age INT) ...... 更多关于MySQL相关内容感兴趣的读者可查看本站专题:《MySQL存储过程技巧大全》、《MySQL常用函数大汇总》、《MySQL日志操作技巧大全》、《MySQL事务操作技巧汇总》及《MySQL数据库锁相关技巧汇总》 希望本文所述对大家MySQL数据库计有所帮助。 |
请发表评论