MYSQL进阶学习笔记二:MySQL存储过程和局部变量!(视频序号:进阶_4-6)

知识点三:MySQL存储过程和局部变量(4,5,6)

存储过程的创建:

    创建存储过程的步骤:

  1. 首先选中数据库
  2. 改变分隔符,不让分号作为执行结束的标记。(通常情况下,改变分隔符命令 DELIMITER $$)
  3. 创建存储过程:

               CREATE PROCEDURE demo_inout_parameter()  

      BEGIN

      SELECT "HELLOW";  

     END; 

     $$

        4.恢复分隔符:DELIMITER ;

        5. 调用存储过程:CALL demo_inout_parameter;

 1 --4 存储过程
 2 DELIMITER //
 3 CREATE PROCEDURE v_test1()
 4 BEGIN
 5     SELECT 'HELLO';
 6     SELECT 'WORD';
 7 END 
 8 //
 9 
10 DELIMITER ;
11 CALL v_test1;
测试存储过程

  存储过程的三种参数:

     IN:输入参数

      表示该参数的值必须在调用存储过程之前指定,在存储过程中修改的不能被返回,

 1 --5 存储过程(2)(变量的定义)
 2 --测试参数IN
 3 DELIMITER //
 4 CREATE PROCEDURE v_test3(IN p_int INT)
 5 BEGIN
 6     SELECT p_int;
 7     SET p_int = p_int +1;
 8     SELECT p_int;
 9 END 
10 //
11 
12 DELIMITER ;
13 SET @p_int =3;
14 CALL v_test3(@p_int);
15 
16 SELECT @p_int;
IN参数测试

    OUT:输出函数

      该值可在存储过程内部改变,并可返回。

 1 --6 存储过程(3)(参数类型)
 2 --测试参数OUT
 3 DELIMITER //
 4 CREATE PROCEDURE v_test6(OUT v_out INT)
 5 BEGIN
 6     SELECT v_out;
 7     SET v_out = 25;
 8     SELECT v_out;
 9 END 
10 //
11 
12 DELIMITER ;
13 SET @v_out =4;
14 CALL v_test6(@v_out);
15 
16 SELECT @v_out;
OUT参数测试

    INOUT:输入输出参数

      该值可以在调用时指定,并可修改和返回。

删除存储过程:

    DROP PROCEDURE name;

 

局部变量:

    创建存储过程时使用

    定义局部变量的语法:
        DECLARE 变量名 数据类型 DEFAULT 默认值

posted @ 2018-05-13 17:48  达尔文在思考  阅读(307)  评论(0编辑  收藏  举报