MySQL触发器更新最后插入的行

标签 mysql triggers row

我有这张表(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

这是正确的吗?

虽然语法看起来没问题,但我做不到!

如有任何帮助,我们将不胜感激。

谢谢!

最佳答案

使用 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 demo

关于MySQL触发器更新最后插入的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17468132/

相关文章:

html - 表格行边框半径不起作用 - 替代方案?

php - Mysql结合更新查询

php - MySQL 获取每个数据库行中的 2 个

c# - WPF 组合框样式和触发器不起作用

r - 如何从R中的1行表转换向量

iPhone + UITableView + 行高

php - mysql php 用户带宽配额管理

mysql - Zend Framework v1 INSERT INTO 多行

sql - SQL插入触发器

mysql - Sequel Pro 触发器,更新第二个表中的计算字段