MySQL 8.0 リファレンスマニュアル


MySQL 8.0 リファレンスマニュアル  /  ...  /  ストアドプロシージャー、関数、トリガー、および LAST_INSERT_ID()

25.2.4 ストアドプロシージャー、関数、トリガー、および LAST_INSERT_ID()

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

  • ストアドプロシージャーで LAST_INSERT_ID() の値を変更するステートメントが実行される場合は、プロシージャー呼び出しが続くステートメントで変更された値が参照されます。

  • 値を変更するストアドファンクションやトリガーでは、値は関数やトリガーが終了したときにリストアされるので、後続のステートメントは変更された値を表示しません。


関連キーワード:  トリガー, 関数, ストアドルーチン, ステートメント, INSERT, イベントスケジューラ, 変更, 構文, メタデータ, InnoDB