知识点三:MySQL存储过程和局部变量(4,5,6)
存储过程的创建:
创建存储过程的步骤:
- 首先选中数据库
- 改变分隔符,不让分号作为执行结束的标记。(通常情况下,改变分隔符命令 DELIMITER $$)
- 创建存储过程:
CREATE PROCEDURE demo_inout_parameter()
BEGIN
SELECT "HELLOW";
END;
$$
4.恢复分隔符:DELIMITER ;
5. 调用存储过程:CALL demo_inout_parameter;
--4 存储过程
DELIMITER //
CREATE PROCEDURE v_test1()
BEGIN
SELECT 'HELLO';
SELECT 'WORD';
END
// DELIMITER ;
CALL v_test1;
测试存储过程
存储过程的三种参数:
IN:输入参数
表示该参数的值必须在调用存储过程之前指定,在存储过程中修改的不能被返回,
--5 存储过程(2)(变量的定义)
--测试参数IN
DELIMITER //
CREATE PROCEDURE v_test3(IN p_int INT)
BEGIN
SELECT p_int;
SET p_int = p_int +1;
SELECT p_int;
END
// DELIMITER ;
SET @p_int =3;
CALL v_test3(@p_int); SELECT @p_int;
IN参数测试
OUT:输出函数
该值可在存储过程内部改变,并可返回。
--6 存储过程(3)(参数类型)
--测试参数OUT
DELIMITER //
CREATE PROCEDURE v_test6(OUT v_out INT)
BEGIN
SELECT v_out;
SET v_out = 25;
SELECT v_out;
END
// DELIMITER ;
SET @v_out =4;
CALL v_test6(@v_out); SELECT @v_out;
OUT参数测试
INOUT:输入输出参数
该值可以在调用时指定,并可修改和返回。
删除存储过程:
DROP PROCEDURE name;
局部变量:
创建存储过程时使用
定义局部变量的语法:
DECLARE
变量名 数据类型 DEFAULT 默认值