12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
ADADADADAD
mysql数据库 时间:2024-12-03 10:29:30
作者:文/会员上传
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
本文实例讲述了mysql存储过程用法。分享给大家供大家参考,具体如下:概述:简单的说,就是一组SQL语句集,功能强大,可以实现一些比较复杂的逻辑功能,类似于JAVA语言中的方法;存储过程跟
以下为本文的正文内容,内容仅供参考!本站为公益性网站,复制本文以及下载DOC文档全部免费。
本文实例讲述了mysql存储过程用法。分享给大家供大家参考,具体如下:
概述:
简单的说,就是一组SQL语句集,功能强大,可以实现一些比较复杂的逻辑功能,类似于JAVA语言中的方法;
存储过程跟触发器有点类似,都是一组SQL集,但是存储过程是主动调用的,且功能比触发器更加强大,触发器是某件事触发后自动调用;
示例
DELIMITER //CREATE PROCEDURE proc (IN num INT)BEGINSELECT * 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)beginDECLARE var INT;DECLARE myname VARCHAR(30);SET var=start;while var<end doSET 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数据库计有所帮助。
11-20
11-19
11-20
11-20
11-20
11-19
11-20
11-20
11-19
11-20
11-19
11-19
11-19
11-19
11-19
11-19