【週刊ドットインストール】 『データで学ぶアルゴリズム Level 1-2』を運営中、Level 1-2も来週リリース予定!
LAST_INSERT_ID() の挙動に関して質問です。
LAST_INSERT_ID()
下記コードでは、作成するテーブルを一つ増やし(test テーブル)、 LAST_INSERT_ID() の直前に実行する INSERT を test テーブルへの INSERT に変更しています。 すると、 LAST_INSERT_ID() で返される値が上記 test テーブルへの INSERT により追加されたレコードの ID に代わっています。
test
INSERT
ID
このことから、 LAST_INSERT_ID() により返される値は厳密に言うと 「最後の行の ID」というよりは「最後に実行された INSERT により追加されたレコードの ID」という理解でよろしいでしょうか。
また、上記認識が正しい場合、紐づける対象のテーブルを指定することは可能でしょうか。
ドットインストールは、3分動画でマスターできるプログラミング学習サービスです。
3分で気軽に学習でき、スマートフォンからも視聴可能です。ホームページやWebサービスの制作を通して、実践的にプログラミングを学べます。
他にも、ゲーム制作やデータ分析・機械学習・AIに使われる言語まで幅広くカバー。学びたい分野のレッスンがきっと見つかります。
この回答を見るにはプレミアムプランへの登録が必要です
LAST_INSERT_ID()の挙動に関して質問です。下記コードでは、作成するテーブルを一つ増やし(
testテーブル)、LAST_INSERT_ID()の直前に実行するINSERTをtestテーブルへのINSERTに変更しています。すると、
LAST_INSERT_ID()で返される値が上記testテーブルへのINSERTにより追加されたレコードのIDに代わっています。このことから、
LAST_INSERT_ID()により返される値は厳密に言うと「最後の行の ID」というよりは「最後に実行された
INSERTにより追加されたレコードの ID」という理解でよろしいでしょうか。また、上記認識が正しい場合、紐づける対象のテーブルを指定することは可能でしょうか。