mysql的trigger

上一篇 / 下一篇  2008-02-15 10:28:20 / 个人分类:mysql

语法

delimiter |

create trigger test_trig [before,after] [insert,update,delete] on test

for each row

begin

 insert into test2 values( "nice to use trigger" );

 update test set cm1=( select name from test3 where id=NEW.t3id );

//NEW

//OLD

/** -- msyql的逻辑语法

 if NEW.sm < 0 then

   set NEW.sm=0;

  statements 1;

 elseif new.sm < 10

  statements 2;

 end if;

*/

/**//一些mysql的系统函数也可以在这里使用,如:

  now()....

  */

 

end;|

 

 

delimiter |

说明: delimiter的作用是更改一条语句的结束符号,模式的是分号,在写function或者trigger时,可以随表设置新的delimiter。但设置之后 一定要更改为原来的delimiter ;

 

example:

DELIMITER $$
CREATETRIGGER`count_insert` AFTERINSERTon`tablename`
FOREACHROWBEGIN
  updatecountsetnums= nums+1;
END$$

DELIMITER;

DELIMITER $$

CREATETRIGGER`count_delete` AFTERDELETEon`tablename`
FOREACHROWBEGIN
  updatecountsetnums=nums-1;
END$$
DELIMITER;


TAG: mysql

ryxjc的个人空间 引用 删除 ryxjc   /   2008-02-26 10:32:17
3
好文,学习学习
 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

Open Toolbar