首页 > 数据库 > MySQL > 正文

mysql存储过程用法实例分析

2024-07-24 12:50:27
字体:
来源:转载
供稿:网友

本文实例讲述了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) 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数据库计有所帮助。

您可能感兴趣的文章:

mysql 存储过程中变量的定义与赋值操作mysql存储过程详解mysql存储过程 游标 循环使用介绍MySQL存储过程例子(包含事务,输出参数,嵌套调用)MySql存储过程与函数详解mysql 查询数据库中的存储过程与函数的语句MySQL 有输入输出参数的存储过程实例实例解析MySQL中的存储过程及存储过程的调用方法Mysql存储过程和函数区别介绍MySQL 存储过程中执行动态SQL语句的方法mysql存储过程中使用游标的实例Mysql存储过程循环内嵌套使用游标示例代码
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表