2011-10-09 76 views
0

我想设置一个只影响插入行的触发器,而不影响其他行。创建一个只影响当前行的MySQL触发器

所以我需要与每行不同的东西。这是我现在拥有的。

CREATE TRIGGER mytrigger BEFORE INSERT ON student 
FOR EACH ROW SET @starost =new.starost+2; 

回答

4

你几乎有它:

CREATE TRIGGER mytrigger BEFORE INSERT ON student 
FOR EACH ROW SET new.starost =new.starost+2; 

它会插入

+0

这纠正了用户的问题,但没有解决标题的问题。 Mootinator的答案就是这样。 –

4

INSERT触发FOR EACH ROW仅影响插入的行。它将处理多于一行(并且因此该名称意味着它处理多于一行)的情况将在像使用INSERT. . .SELECT语法时那样位于批量插入。

+0

这是真正的答案之前添加两个到starost领域。尽管@ ed-heal的答案纠正了错误。但这应该是真正的概念和理论答案。 –