MySql之存储过程的使用

一:创建存储过程

 1:简单存储过程

CREATE PROCEDURE 存储过程名()
BEGIN
    SQL操作
END;

2:使用参数的存储过程

CREATE PROCEDURE 存储过程名(IN in_param 数据类型,OUT output 数据类型...)
BEGIN
    SELECT 。。。 INTO output FROM 表名 WHERE 列 = in_param;
    ....
END;

如上:参数有两种,入参 与 出参。

入参是调用存储过程时传递进来的数据,用于SQL操作时作为检索条件;

出参是一个变量,调用存储过程时传递进来,SQL操作语句把检索结果赋值给这边变量,在外部再读取该变量时就把存储过程的结果携带出去了。

3:使用智能存储过程

存储过程的操作语句不仅仅可以是SQL语句,还可以定义变量、使用循环控制语句。

CREATE PROCEDURE 存储过程名(IN in_param 数据类型,OUT output 数据类型...)
BEGIN
    DECLARE 变量名 类型 DEFAULT 初始值; //定义变量
    //条件语句
    IF 判断语句 THEN
    操作
    ELSEIF
    操作
    ELSE 
    操作
    END IF;
END;

二:调用存储过程

CALL 存储过程名(in参数值,@out_变量值);
获取结果:
SELECT @out_变量值;

Mysql中,变量以 @ 开头。

三:删除存储过程

DROP PROCEDURE 存储过程名;
原文地址:https://www.cnblogs.com/ygj0930/p/8283600.html