MySQL 8.4 Release Notes
27.2.4 存储过程、函数、触发器和 LAST_INSERT_ID()()
在存储例程(过程或函数)或触发器的主体中,LAST_INSERT_ID()
的值将像在这些对象主体外执行的语句一样变化(见第14.15节,“信息函数”)。存储例程或触发器对LAST_INSERT_ID()
的值的影响,取决于该例程的类型:
-
如果存储过程执行改变
LAST_INSERT_ID()
的语句,那么语句的变化将被后续语句看到。 -
对于存储函数和触发器,如果它们改变了
LAST_INSERT_ID()
的值,那么在函数或触发器结束时,该值将被恢复,因此后续语句将不见变化。