gpt4 book ai didi

mysql 在触发器中获取 last_insert_id()

转载 作者:IT老高 更新时间:2023-10-29 00:16:01 27 4
gpt4 key购买 nike

我的理解是,当您调用 last_insert_id() 时,它会通过连接进行,因此您将获得插入到调用 last_insert_id() 的同一连接上的最后一行的 ID,对吗?

如果我在“AFTER INSERT”触发器中调用 last_insert_id() 会怎样?

我想做的基本上就是这个

DELIMITER $$
CREATE TRIGGER sometrigger
AFTER INSERT ON sometable
BEGIN
INSERT INTO anothertable (id, lastup) VALUES (last_insert_id(), NOW());
END $$

'anothertable' 中的 id 与 'sometable' 中的 id 相同非常重要这会工作还是我应该创建一个存储过程而不是插入两个表?

或者可能有一些,在触发器中,从导致触发器触发的插入语句中获取值?我还没有找到任何相关信息。

最佳答案

您应该能够使用 NEW.{id column name} 来引用最后插入的 id(例如 NEW.id 如果自动递增列是称为 id。)

关于mysql 在触发器中获取 last_insert_id(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6499389/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com