日期:2014-05-17  浏览次数:20744 次

java 向两个表 插入数据 并且第二个表取得第一个表的ID
麻烦写个完整的例子:java 向两个表 插入数据  并且第二个表取得第一个表的ID,就是新增的时候同学向两个表插入数据,插入第二个表时,第二个表的一个字段是取第一个表的自动增长的ID。

------解决方案--------------------
这个是用存储过程好解决,也要看你是用什么数据库
sqlserver
insert into table1 values(colvalue1,colvalue2)
select @@identity 这个值插入到第二个表

oracle 插入后取得Sequence再插入到第二个表
------解决方案--------------------
用hibernate的话,添加之后会在该对象中自动set相应id,如果sql的话就得synchronized方法,方法中先添加数据,然后获取最大id值,用这个值添加到第二个表。
------解决方案--------------------
1楼的便是,无论SqlServer还是MySQL,第一张表INSERT之后,select @@identity一下,获得前一张表刚刚生成的ID,用于下一次INSERT操作
------解决方案--------------------
这个看你是什么数据库了,ORACLE的话,两张表的PK共享一个sequence

MSSQL MYSQL的话 你可以select max(id) from table_01; 然后加1,insert into table_02...