
jdbc中如何一次插入多表数据
两张数据库表,从表的主键又是外键引用的是主表的主键.sql语句中主表是自动增长的,现在当用jdbc插入数据的时候,主表的主键是自动增长的,但是我的从表的主键如何处理添加呢...
两张数据库表,从表的主键又是外键引用的是主表的主键.sql语句中主表是自动增长的,现在当用jdbc插入数据的时候,主表的主键是自动增长的,但是我的从表的主键如何处理添加呢,多谢大侠提示啊?
同时两张表的id自增这样除外,还有其他办法吗?就jdbc不要其他框架 展开
同时两张表的id自增这样除外,还有其他办法吗?就jdbc不要其他框架 展开
3个回答
展开全部
方法同步 调用存储过程
存储过程:
选插入主表 再插入从表
insert into 主表(...) values(...)
insert into 从表(...) values(select top 1 id,...<可以有其它字段> from 主表 order by id desc)
存储过程:
选插入主表 再插入从表
insert into 主表(...) values(...)
insert into 从表(...) values(select top 1 id,...<可以有其它字段> from 主表 order by id desc)
展开全部
insert into 从表表名 values (select max(id) from 主表表名,需要插入的其他字段);
追问
这样插入的话可能在sql语句当中没有错 ,但是在jdbc里面就无法实现,难道要执行的时候先查找一下最大的id吗
追答
这叫蠕虫复制,一般只是在做测试的时候用的,JDBC操作的时候不建议这样用哦
你利用序列啊sequence,有个属性是当前序列值(seq_my.currval)另外个属性是下一个序列值(seq_my.nextval),当前序列值就是你的id最大值撒
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
主表不自增不就可以实现了,每次插入获取主表最大id
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询