亚洲免费在线视频-亚洲啊v-久久免费精品视频-国产精品va-看片地址-成人在线视频网

您的位置:首頁技術文章
文章詳情頁

mysql 同時向兩張關聯表插入數據

瀏覽:107日期:2022-06-20 09:09:40

問題描述

create table teacher( id int(11) not null auto_increment, name varchar(10) not null, primary key(id))engine=innodb;create table teacherCourse( teacherId int(11) not null, courseNum int(10) not null, courseName varchar(50) not null, constraint foreign key(teacherId) references staff(id) on delete cascade, primary key(teacherId, courseNum))engine=innodb;

我想在teacher表增加一條記錄的同時也要為teacherCourse增加一條記錄,問題是表1的id是自增的,能先獲取剛插入自增的id然后作為表2的teacherId插入數據嗎?

問題解答

回答1:

1.select (auto_increment-1) from information_scheme.tables where table_name=’TableName’2.select last_insert_id()

回答2:

這個要看你用的數據持久層框架了,一般來說都是可以的。mybatis的話你可以看看這些:http://lavasoft.blog.51cto.com/62575/1384959/http://my.oschina.net/u/1256344/blog/159703

hibernate的話也差不多,你搜一下 hibernate/Mybatis 獲取自增id 就可以了。

回答3:

Hibernate我用的比較少,平時用的是Mybatis,說說Mybatis的做法吧。你的teacher表結構,id是主鍵,并且自增,是這樣進行配置。mybatis xml文件里,需要在insert前面加上

<selectKey resultType='java.lang.Long' order='AFTER' keyProperty='id'> SELECT LAST_INSERT_ID()</selectKey>

即可

回答4:

last_insert_id()是一種;觸發器也可以,

create trigger `insert_teacherCourse` AFTER INSERT on `teacher`for each row insert into teacherCourse(teacherId) values(NEW.id);

大致寫了下,teacherCourse里面還有些是not null的也要插入

相關文章:
主站蜘蛛池模板: 成人精品一级毛片 | 99热com| 最新更新国内自拍视频 | 亚洲影院中文字幕 | 日本道综合一本久久久88 | 国产三级香港在线观看 | 国产日韩欧美一区二区三区综合 | 成人精品视频一区二区在线 | 美国做受三级的视频播放 | 日本一级级特黄特色大片 | 久久国产精品二区99 | 中文字幕国产视频 | 性猛交毛片 | 午夜宅男在线永久免费观看网 | 国产成人综合高清在线观看 | 一级黄片一级毛片 | 欧美成人亚洲高清在线观看 | 99视频精品全国免费 | 91精品国产综合成人 | 国产精品白浆流出视频 | 欧美成人在线影院 | 精品日韩一区二区三区视频 | 久久综合精品国产一区二区三区 | 大陆孕妇孕交视频自拍 | 99精品国产在热久久 | 毛片在线高清免费观看 | 欧美精品在欧美一区二区 | 九草在线 | 中文字幕在线视频观看 | 黄性色| 男女同床爽爽视频免费 | 国产精品日本欧美一区二区 | 精品免费久久久久久久 | 久久久久久久国产精品 | 日产日韩亚洲欧美综合搜索 | 精品在线播放 | 韩日黄色 | 综合精品视频 | 男女午夜爱爱久久无遮挡 | 亚洲国产成人影院播放 | 成年日韩片av在线网站 |