zoukankan      html  css  js  c++  java
  • 11存储过程

    创建封装

    CREATE PROCEDURE p1() 
    BEGIN
        INSERT INTO goods VALUES(null,'寒舍',50);    
        SELECT * FROM goods;
    END

    使用封装

    CALL p1();

    传参创建带有参数的封装

    #入参IN、出参OUT、出入参OUTIN
    CREATE PROCEDURE p2(IN i INT,INOUT names VARCHAR(50)) 
    BEGIN
        UPDATE goods SET name=names WHERE id=i;
        SELECT names;
    END

     使用带有参数的封装,出参传参必须先赋个值

    SET @names='大鹅';
    CALL p2(4,@names);

     将查询到的值赋值给其他,INTO关键字可以将前面字段的查询结果执行给INTO后面的变量

    SELECT 要查询的值 INTO 要赋的值 FROM ...

    控制--创建带有参数和条件的封装

    CREATE PROCEDURE p3(IN flag CHAR(5),IN nums INT)
    BEGIN
        IF flag='true' THEN SELECT * FROM goods WHERE num<nums;
        ELSEIF flag='false' THEN SELECT * FROM goods WHERE num>nums;
        ELSE SELECT * FROM goods;
        END IF;
    END 

     使用

    CALL p3('false',20);

    循环--创建一个计算1到100的和的封装

    #计算1到100的和
    CREATE PROCEDURE p4(IN n INT,OUT m INT)
    BEGIN
        DECLARE i INT DEFAULT 0;
        DECLARE sums INT;
        SET sums=0;
        WHILE i<=n DO
            SET sums=sums+i;
            SET i=i+1;
        END WHILE;
        SET m=sums;
    END

    运行此封装

  • 相关阅读:
    Mongo DB intro
    java class 初始化
    Java Multi-Thread
    Java Exception
    PHP基础2
    Java STL
    javascript getElemet 获取元素 (转)
    javascript 异常处理
    javascript 输出
    LinkButton跳转页面及传递参数(转载)
  • 原文地址:https://www.cnblogs.com/start20180703/p/10353811.html
Copyright © 2011-2022 走看看