1

我有这张表(SystemEvents):

id       ipv4        ipnumber
 1       1.2.3.4      
 2       3.4.5.6

我需要一个 AFTER INSERT 触发器来更新该表的最后一行。

类似于以下内容

UPDATE SystemEvents 
SET ipnumber=INET_ATON(NEW.ipv4)
WHERE id=NEW.id

这个对吗?

虽然语法看起来不错,但我无法让它工作!

任何帮助将非常感激。

谢谢!

4

2 回答 2

3

使用BEFORE INSERT作品

delimiter |
CREATE TRIGGER `some_name` BEFORE INSERT ON SystemEvents
FOR EACH ROW BEGIN
   SET NEW.ipnumber = INET_ATON(NEW.ipv4);
END
| 
delimiter ;

SQLFiddle 演示

于 2013-07-04T10:41:44.983 回答
0

尝试这个:

UPDATE SystemEvents 
SET ipnumber=INET_ATON(NEW.ipv4)
WHERE id=(SELECT MAX(id) FROM SystemEvents WHERE id < NEW.id);
于 2013-07-04T10:57:27.950 回答