ストアドルーチン (プロシージャーまたは関数) またはトリガーの本体内では、LAST_INSERT_ID()
の値は、このような種類のオブジェクトの本体外で実行されたステートメントと同様に変更されます (セクション12.16「情報関数」を参照してください)。 あとに続くステートメントで参照される LAST_INSERT_ID()
の値でのストアドルーチンまたはトリガーの効果は、ルーチンの種類によって異なります。
ストアドプロシージャーで
LAST_INSERT_ID()
の値を変更するステートメントが実行される場合は、プロシージャー呼び出しが続くステートメントで変更された値が参照されます。値を変更するストアドファンクションやトリガーでは、値は関数やトリガーが終了したときにリストアされるので、後続のステートメントは変更された値を表示しません。