mysql call函数&触发器

call 函数

? procedure
 往t1 数据库中插入 10000条数据  
\d //  更改结束符  以// 结束  
mysql> create procedure p2()
    begin
    set @i=1;
    while @i<=10000 do
   insert into t1(id,name) values(@i,concat("user",@i));
   set @i=@i+1;
   end while;
   end //

  \d ;
  
  show procedure status;   
  show create procedure p1\G 查看创建 过程   
  
  call p2; #调用p2

触发器

t1 t2两张表 一模一样 如果t1中数据发生变动 t2表也跟着变动

? trigger 
 \d // 
  在插入到t1之前 循环讲数据插入到t2
 mysql> create trigger t_1 before insert on t1 for each row
    begin
    insert into t2(name) values(new.name);
   end //
    \d ;
    
    show triggers;列出所有的触发器
    
  \d // 
 mysql> create trigger d_1 before delete on t1 for each row  #删除
    -> begin
    ->delete from t2 where name=old.name;
    -> end //
    \d ;   
    
    
   \d // 
 mysql> create trigger u_1 before update on t1 for each row  #gai
    -> begin
    -> update t2 set name=new.name where name=old.name;
    -> end //
    \d ;      
  

你可能感兴趣的:(mysql call函数&触发器)