zoukankan      html  css  js  c++  java
  • 数据库之存储过程-- 基于MySQL

    存储过程基本语法

    create procedure procedure_name  [;number]

    [{@parameter data_type}[varying][=default][output]]

    1.只返回单一记录集合的存储过程

    drop Procedure if EXISTS proc_adder;-- 如果存在该存储过程即删除存储过程
    CREATE PROCEDURE proc_adder()  -- 创建存储过程
    BEGIN
    select * from base_card; -- 执行sql语句
    END

    call proc_adder  --执行存储过程

    2.含有输入输出参数

    DROP PROCEDURE IF EXISTS proc_adder;
    CREATE PROCEDURE proc_adder(IN a varchar(256),OUT card_id int)
    BEGIN
    select * from base_card where card_no = a;
    set card_id = a;
    END
    set @a = '20170720';
    call proc_adder(@a,@card_id);
    select @card_id;

    运行函数得到的结果如下:

    可以通过两种途径执行存储过程:

    1.通过call方法。

    2.通过界面运行存储过程,直接输入参数

     3存储过程中的控制语句

    drop procedure if exists proc_if;
    create procedure proc_if (in sum int)
    begin
    declare c varchar(500);
    if sum >=100 then
    set c = 'good';
    elseif sum< 100 THEN
    set c ='well';
    else
    set c = 'come on';
    end if;
    select c;
    end
    call proc_if(99)

  • 相关阅读:
    再谈Dilworth定理
    区间动态规划
    单调队列优化动态规划
    暑假集训考试R2 konomi 慕
    NOIP 2000 计算器的改良
    2007 Simulation message
    COCI 2003 LIFTOVI 电梯 SPFA
    NOIP 2003 数字游戏
    USACO 2014 DEC Guard Mark 状态压缩
    使用HttpClient发送GET请求
  • 原文地址:https://www.cnblogs.com/fengyiru6369/p/7212520.html
Copyright © 2011-2022 走看看