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

    一.参数

    1.in

    2.out

    3.inout

    二.流程控制

    1.选择语句

    (1)if...then...elseif....then...end if;

    (2)case...when...then...when...then...else...end case;

    (3)ifnull:有两个参数。当第一个参数为空时,选第二个参数,即使第二个参数也为空;否则选第一个。

     三.循环语句

    1.while...do...end while;

     2.repeat

      内容

           util条件  //退出循环条件

     end repeat;

     

    3.loop名字:loop

      内容

      if 条件 then

              leave loop名字;

      end if;

      end loop;  

     

    四.定义条件和处理

    定义条件和处理可以用来定义在处理过程中遇到问题时相应的处理步骤

    declare continue handler for sqlstate '错误代码值' set 变量=变量值

    1.定义存储变量并执行,得到错误代码:

    2.定义条件和处理来处理错误

     五.管理存储过程

    1.查看数据库下的存储过程:show procedure status where db='数据库名';

    2.查看当前数据库下存储过程的列表:select specific_name from mysql.proc;

    3.查看存储过程的内容:select specific_name,body from mysql.proc;

                                          show create procedure 存储过程名

    4.删除存储过程:drop procedure if exists 存储过程名字;

    5.修改存储过程:

    alter {procedure | function} sp_name [characteristic]

    characteristic:

      {contains sql | no sql | reads sql data | modified sql data}

      | sql security {definer | invoker}

      | comment 'string'

    contains sql表示子程序中包含sql语句,但不包含读或写数据的语句;

    no sql 表示子程序中不包含sql语句;

    read sql data 表示子程序中包含读数据的语句;

    modifies sql data表示子程序中包含写数据的语句。

    sql security {definer | invoker}指明谁有权限来执行。

    definer表示只有定义者自己才能执行;invoker表示调用者可以执行。

    comment ‘string’是注释信息

    目前,MySQL还不提供对已存在的存储过程的代码修改
    如果,一定要修改存储过程的diam,必须,先将存储过程删除之后,在重新编写代码,或者创建一个新的存储过程

  • 相关阅读:
    基于聚宽量化交易平台实现量化交易策略
    量化交易——双均线策略(金叉死叉)
    商城支付功能
    商城——结算中心模块
    Tushare(金融数据接口包)
    CSS页面布局单位总结
    Python
    Python
    无需编程的爬虫
    Python
  • 原文地址:https://www.cnblogs.com/xiehuazhen/p/10098707.html
Copyright © 2011-2022 走看看