日期:2014-05-19  浏览次数:20747 次

ibaits 3 oracle 一对一插入问题
表一:CarList 
INSERT INTO "CarList" (
  id ,
 carname)
VALUES (
  CARLIST_SEQ.nextval ,
  '车1');

表二:
carlist2:
id2 , carlist_id ,name2

一对一对应关系
CarList.id 对应 carlist2.carlist_id


当插入 表一:CarList 的时候, 要同时插入 表二:carlist2

我们是用 SEQ 来做主键, 请问在插入表二的时候 carlist2.carlist_id 如何得到??
或者 mybatis 有没有什么 方法? mybatis 在mysql 上就可以得到 刚插入的ID , 但 我不知道 oracle 是如何的

------解决方案--------------------
我会这样去做的
调用存储过程来一次性做这二个操作。然后你说要获取刚插入的主键。可以插入后查一下是什么值 再往第二张表里插入。
oracle 一般都是用的序列吧 序列.nextval就是生成的主键值
------解决方案--------------------
mysql主键是怎么生成的?插入第一条就能得到第一个的主键,然后你再插入第二条呗
------解决方案--------------------
不是吧,因为用了依赖的都嘛