忍者ブログ
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]
カレンダー
04 2025/05 06
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 31
フリーエリア
最新CM
最新TB
プロフィール
HN:
JAVA初心者
性別:
非公開
バーコード
ブログ内検索
アクセス解析
カウンター