欢迎投稿

今日深度:

MySQL触发器 trigger之for each row,mysqltrigger

MySQL触发器 trigger之for each row,mysqltrigger


for each row 每行受影响,触发器都执行,叫行级触发器。 oracle 触发器中分行级触发器和语句级触发器,可不写for each row,无论影响多少行都只执行一次。 mysql不支持语句触发器,所以必须写for each row;

实际操作验证:

#触发器test5:
DELIMITER $$
CREATE TRIGGER test5
AFTER
UPDATE
ON goods
FOR EACH ROW
BEGIN
  INSERT INTO `ord` VALUES (1, 2, 2);
END$$

mysql只支持行级触发器,影响多少行就会执行多少次。



mysql 触发器怎触发整个表 for each row 每次只可以触发一行,怎可以一次性触发更改整个表

这个没有办法的,因为mysql的触发器是行级的,只能针对行来操作
别的办法就是不用触发器,用程序来实现吧,简单省事
 

oracle与mysql的触发器的for each row的几个问题

for each row指的是数据库表的行
见1
根据不同的触发器条件,for each row是只要有一行发生改变就触发,因为你可以设定before/after,所以具体条件要具体判断
不加也没事儿啊,这个具体到你的触发动作是什么
————————————————————————————————
你给的条件有点儿模糊,如果有问题请追问

 

www.htsjk.Com true http://www.htsjk.com/shujukunews/4146.html NewsArticle MySQL触发器 trigger之for each row,mysqltrigger for each row 每行受影响,触发器都执行,叫行级触发器。oracle 触发器中分行级触发器和语句级触发器,可不写for each row,无论影响多少行都只执行...
评论暂时关闭