忍者ブログ
JAVAについて調べたいろんなことをメモる
[8] [7] [6] [4] [3] [2] [1]
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。


あるテーブルtableAに1レコードinsertし、

そのtableAのAUTO_INCREMENTなtableA.IDを外部キーに持つtableBを続けてinsertしたいときに、tableA.IDを知る方法はないものか?



普通に考えて、tableAをinsert後にselectでtableA.IDを取得すればいいような気がするがめんどくさい。もっと賢いやり方があるはず。

ネットで調べたところlast_insert_id()という関数があるらしい。



create table tableA(
ID INT PRIMARY KEY AUTO_INCREMENT,
NAME VARCHAR(50)
);
create table tableB(
ID INT PRIMARY KEY AUTO_INCREMENT,
AID INT,
NAME VARCHAR(50)
);
insert into tableA(name) values('あいうえお');
insert into tableB(aid, name) values(last_insert_id(), 'あいうえお');



last_insert_id()はテーブルを指定できないので注意が必要だ。

PR

コメント


コメントフォーム
お名前
タイトル
文字色
メールアドレス
URL
コメント
パスワード
  Vodafone絵文字 i-mode絵文字 Ezweb絵文字


トラックバック
この記事にトラックバックする:


忍者ブログ [PR]
カレンダー
05 2025/06 07
S M T W T F S
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
フリーエリア
最新CM
最新TB
プロフィール
HN:
JAVA初心者
性別:
非公開
バーコード
ブログ内検索
アクセス解析
カウンター