【发布时间】:2015-10-12 11:55:01
【问题描述】:
我需要将 sqlite 触发器转换为 mysql 触发器。我已经转换了以下 sqlite 触发器
create trigger arpinsert after insert on arp
begin
update arp set timeout = datetime('now', '60 seconds') where rowid = new.rowid and new.mac != '00:00:00:00:00:00';
update arp set timeout = datetime('now') where rowid = new.rowid and new.mac = '00:00:00:00:00:00';
end;
进入下面的mysql触发器
delimiter //
create
trigger arpBeforeInsert
before insert
on arp for each row
begin
if new.mac != '00:00:00:00:00:00' then
set new.timeout = date_add(now(), interval 60 second);
else
set new.timeout = now();
end if;
end;//
delimiter ;
我知道 mysql 触发器只在受影响的行上触发。 sqlite 触发器也是如此吗?如果我删除了where rowid = new.rowid,sqlite 触发器会更新整个表吗?
【问题讨论】: