参数
mysql存储过程的参数用在存储过程的定义,共有三种参数类型,IN,OUT,INOUT
IN 输入参数
表示该参数的值必须在调用存储过程时指定,在存储过程中修改该参数的值不能被返回,为默认值
OUT 输出参数
该值可在存储过程内部被改变,并可返回
INOUT 输入输出参数
调用时指定,并且可被改变和返回
1.IN参数例子
CREATE PROCEDURE sp_demo_in_parameter (IN p_in INT)
BEGIN SELECT p_in;
SET p_in = 2;
SELECT p_in;
END;
SET @p_in = 103;
CALL sp_demo_in_parameter (@p_in);
SELECT @p_in;
2.OUT参数例子
CREATE PROCEDURE sp_demo_out_parameter (OUT p_out INT)
BEGIN SELECT p_out;/*查看输出参数*/
SET p_out = 2;/*修改参数值*/
SELECT p_out;/*看看有否变化*/
END;
SET @p_out = 1;
CALL sp_demo_out_parameter (@p_out);
SELECT @p_out;
3.INOUT参数例子
CREATE PROCEDURE sp_demo_inout_parameter (INOUT p_inout INT)
BEGIN SELECT p_inout;
SET p_inout = 2;
SELECT p_inout;
END;
SET @p_inout = 5;
CALL sp_demo_inout_parameter (@p_inout);
SELECT @p_inout;