首页 > 代码库 > MySQL存储过程定义及调用

MySQL存储过程定义及调用

#MySQL存储过程

##最简单的存储过程
DROP PROCEDURE IF EXISTS sp1;
CREATE PROCEDURE sp1() COMMENT 最简单的存储过程 
    SELECT 1;
##调用
CALL sp1 ();

##带输入参数的存储过程
DROP PROCEDURE IF EXISTS sp2;
CREATE PROCEDURE sp2(IN p INT) COMMENT 带输入参数的存储过程
    SELECT p;
##调用
CALL sp2(1);

#带输出参数的存储过程
DROP PROCEDURE IF EXISTS sp3;
CREATE PROCEDURE sp3(OUT q INT) COMMENT 带输出参数的存储过程
    SELECT 1 INTO q;
#调用
CALL sp3(@r);
SELECT @r;

#带输入和输出参数的存储过程
DROP PROCEDURE IF EXISTS sp4;
CREATE PROCEDURE sp4(IN p INT,OUT q INT) COMMENT 带输入和输出参数的存储过程
    SELECT p INTO q;
#调用
CALL sp4(1,@r);
SELECT @r;

 

MySQL存储过程定义及调用