zoukankan      html  css  js  c++  java
  • 存储过程&触发器

    存储过程

    相当于没有返回值的函数。函数体内可以包括各种增删改查

    语法:

      create procedure 函数名(参数1+类型,参数2+类型...)

        begin 

          语句块...

        end;

     1 //举例
     2     delimiter $
     3        create procedure pro1(p1 int,p2 int)
     4            begin 
     5                if(p1>p2) then
     6                     begin
     7                         select p1;
     8                     end;
     9                 else
    10                     begin
    11                         select p2;
    12                     end;
    13                 end if;
    14             end;$
    15         delimiter ;
    1 //调用方式
    2     call prol(4,5);
    3 //删除存储过程
    4     drop procedure 函数名;

    触发器

    触发器是一段在某种事件发生时自动执行的语句块。

    说明:

      触发时机(2个):before,after

      触发事件(3个):insert,update,delete

      触发器内部关键字:

        new:在执行insert时,要插入的数据行。

        old:在执行delete时,要删除的数据化。

     1 //语法
     2  create trigger 触发器名 触发时机 触发事件 on 表名 for each row
     3        begin
     4          ...语句块   #注:此处不能有select语句和return返回值语句 
     5          end;
     6 //举例
     7     /*create table tab_tri1(id int);create table tab_tri2(id int);*/
     8    delimiter $
     9    create trigger tri1 before insert on tab_tri1 for each row
    10       begin 
    11          insert into tab_tri2 values(new.id*10); #new.id表示新插入的数据行id字段的值
    12      end;$
    13      delimiter ;
    14   /*insert into tab_tri1 values(3);select * from tab_tri1;select * from tab_tri2;*/
    15 //删除
    16      drop trigger tri1;
  • 相关阅读:
    Linux pmap 工具
    bzoj 1060 贪心
    bzoj 1076 状压DP
    bzoj 1150 贪心
    bzoj 1412 最小割 网络流
    bzoj 3212 线段树
    bzoj 1942 斜率优化DP
    bzoj 1876 高精
    bzoj 1880 最短路
    斜率优化DP讲解
  • 原文地址:https://www.cnblogs.com/zwtqf/p/6740886.html
Copyright © 2011-2022 走看看