事件 + 存储过程 (基础)

一、事件(可以执行定时任务)

1、create  even  if not exists  Event_Stat_Daily

2、on schedule       表示计划任务

at     时间戳,表示完成单次任务

even 【start/end 时间戳】  表示完成重复任务,时间单位可以是year,month,day,hour,minute,second

3、on  completion  [not]  preserve       表示事件执行完任务不会被保存

on  completion 表示事件已经结束

preserve   表示事件执行完任务后会被保存起来

4、enable |  disable

enable  系统会执行这个事件

disable  系统不会执行这个事件

5、do + sql语句 |  存储过程

      存储过程: do  call  P_INS_UP_USER_LINE()$$

      SQL复合语句:do    BEGIN

CREATE TABLE test1;//创建表(需要测试一下)

DROP TABLE test2;//删除表

CALL proc_test1();//调用存储过程

 END

二、存储过程

存储过程就是将若干条sql语句封装起来,编译好放在mysql服务器中,需要时调用即可;


        Declear  用来定义参数;

         set 用来设置变量的值;

        if then ... else...end if 用于判断 ;

while...do...end while 用于循环 ;


创建存储过程

Create  procedure   newTest(参数)

begin

sql语句;

end;

案例1
Create  procedure   newTest(in  name  char(100))
begin
	   DECLARE age INT DEFAULT 16;
	    DECLARE height INT DEFAULT 170;
	    DECLARE weight INT DEFAULT 16;
	    
	    set age:=age+10;
	    set weight:=weight*10;
	    
	    SELECT name ;
	    
	    if age>18  then
		select '已成年';
	    else 
		select '未成年';
	    end if;
	    
	    SELECT CONCAT('年龄',age);
	    SELECT concat('身高',height,'cm');
	    SELECT CONCAT('体重',weight,'公斤'); 
End;
案例2
Create  procedure   newTest()
begin
declare  i  int default 0;
	    declare sum1  int  default 0;
	    
	    while i<=10 do
		set sum1:=i+sum1;
		set i:=i+1;
	    end while;
	    
	    select concat('1~10的和为',sum1);
end;
案例3
Create  procedure   newTest()
begin
DECLARE ave INT DEFAULT 10;
	    SET ave:=10/5;
	    
	    CASE ave
		WHEN 1 THEN SELECT '学神';
		WHEN 2 THEN SELECT '学霸';
		WHEN 3 THEN SELECT '学奴';
		ELSE SELECT '学渣';
	   END CASE;
end;

执行存储过程

call   存储过程名(入参或者出参)

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值