mysql 更新本表觸發器

2021-08-06 06:50:51 字數 530 閱讀 1624

例項:create definer=`root`@`%` trigger `jq`.`jq_jam_event_t_before_update` before update on `jq_jam_event_t` for each row

begin

if new.duration<=120 then

set new.zt=0;

elseif new.duration<=300 and new.duration>120 then

set new.zt=1;

elseif new.duration>300 then

set new.zt=2;

end if;

end在oracle中會由於事務衝突,不能直接更新本表的,可以使用pragma autonomous_transaction; 作為自製事務;

但在mysql中沒有這種自製事務,所以更新本表的時候不能使用update來更新,而要使用set new.column=?? 來更新字段值。

注意:觸發器只能是before update

mysql 觸發器 臨時表 Mysql觸發器

mysql觸發器 1.建立觸發器 注意 觸發器只能建立在永久表上,不能對臨時表建立觸發器,語法如下 create trigger trigger name trigger time trigger event on table name for each row trigger stmt trigg...

oralce觸發器中更新本表的方法

oralce觸發器中更新本表的方法 sql create table create table test up tri id number,name varchar2 20 age number 2 中如何更新a表的其他字段。舉例說明 為該錶建立乙個觸發器,功能是 當name欄位發生改變時,將age...

mysql 觸發器 更新前

create trigger update before video info before update on video info for each row begin insert into video info update action name,id,name,alias name,ep...