mysql存储过程简介

Posted 墨阳

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql存储过程简介相关的知识,希望对你有一定的参考价值。

一、存储过程,可以理解为带有逻辑的sql语句。

     优点:是执行效率非常快,存储过程是在数据库的服务器端执行的。

     缺点:移植性很差,不同数据库的存储过程是不能移植。

二、

1、基本语法

--创建存储过程开始
--声明存储过程结束符为$
DELIMITER $
CREATE PROCEDURE 存储名(IN i int ,out sname varchar(25)) --参数类型(in,out,inout)  参数名  数据库类型
BEGIN
    -- 可以写sql和逻辑体
    -- if语句写法开始
    -- 列如:
    if 条件表达式 then 
        --可以写sql和逻辑体
    elseif 条件表达式 then 
        --可以写sql和逻辑体
    else 
        --可以写sql和逻辑体
    end if
    --if语句写法结束
    
    --while循环语句开始
    -- 列如:
    -- 声明变量i,result
    DECLARE    i INT DEFAULT 1;
    DECLARE result INT DEFAULT 0;
    WHILE i<=num DO
        --可以写sql和逻辑体
        SET result = result + i;
        SET i = i+1;
    END WHILE;
    --while循环语句结束
    
    --使用INTO获取数据库的数据给输出参数开始
    --列如:
        SELECT NAME INTO sname FROM 表名 WHERE id=i; -- i为输入参数,sname为输出参数
    --使用INTO获取数据库的数据给输出参数结束
END $
--创建存储过程结束
--备注 
参数:
IN:   表示输入参数,可以携带数据带存储过程中
OUT: 表示输出参数,可以从存储过程中返回结果
INOUT: 表示输入输出参数,既可以输入功能,也可以输出功能

2、调用存储过程

CALL  存储过程名(参数...);

3、删除存储过程

DROP PROCEDURE 存储过程名;

 三、触发器

1、创建语法

CREATE  TRIGGER  触发器名   
AFTER|BEFORE
INSERT|DELETE|UPDATE ON 表名
FOR EACH ROW
-- 语句sql
end

2、删除

DROP  TRIGGER  触发器名;

 

yexiangyang

[email protected]


 







以上是关于mysql存储过程简介的主要内容,如果未能解决你的问题,请参考以下文章

MySQL存储过程简介

mysql数据库存储过程

mysql数据库存储过程

MySQL存储过程

MySQL之存储过程实例讲解(创建调用查看修改删除)

MySql触发器使用