存储过程,函数,触发器和LAST_INSERT_ID()
在存储的例程(过程或函数)或触发器LAST_INSERT_ID()
的主体内,更改的值与在此类对象的主体外部执行的语句的更改方式相同(请参见“信息函数”)。LAST_INSERT_ID()
通过以下语句可以看到存储的例程或触发器对其值的影响,取决于例程的类型:
- 如果存储过程执行的语句更改了的值
LAST_INSERT_ID()
,则该过程调用后的语句将看到更改的值。 - 对于存储的函数和更改该值的触发器,该函数或触发器结束时将恢复该值,因此以下语句看不到更改后的值。