mysql的存储过程

存储过程就是一条或多条的sql语句的集合

当对数据库进行一些列复杂操作时,存储过程可以将这些复杂操作封装成一个代码块,以便重复使用

创建存储过程
DELIMITER // 此语句把分隔符换成//
CREATE PROCEDURE Proc()
BEGIN
SELECT * FROM account;
END;
DELIMITER ;

调用
call Proc();

删除
DROP PROCEDURE Proc;

查看
SHOW PROCEDURE STATUS\G

声明变量
SET @name=”account”;
mysql>select @name;

MySQL存储过程的参数
三种参数类型
IN OUT INOUT
IN参数例子
参数的值必须在调用存储过程时指定,在存储过程中修改该参数的值不被返回,为默认值

DELIMITER //  
CREATE PROCEDURE demo(IN p1 int)  
BEGIN   
SELECT p1;   
SET p1=2;   
SELECT p1;   
END;   
//  
DELIMITER ;
SET @p1=1;  

CALL demo(@p1);
select @p1

这里写图片描述

OUT参数例子
输出参数:该值可在存储过程内部被改变,并可返回

DELIMITER //  
CREATE PROCEDURE demo2(OUT p2 int)  
BEGIN 
SELECT p2;  
SET p2=2;  
SELECT p2;  
END;  
//  
DELIMITER ; 
SET @p2=1;  

CALL demo2(@p2);
select @p2;

这里写图片描述

INOUT参数例子
输入输出参数:调用时指定,并且可被改变和返回

DELIMITER //   
CREATE PROCEDURE demo3(INOUT p3 int)   
BEGIN 
SELECT p3;  
SET p3=2;  
SELECT p3;   
END;  
//   
DELIMITER ;  
SET @p3=1;  

CALL demo3(@p3) ; 
select @p3;

这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值