现有主表a,子表sub_a,中间有a_id 存在关联,现在java程序中需要主子表同事保存,而且存在多个子记录。
不用hibernate的处理方式,有其他方式吗?处理方式不能使用先保存主表,后获取id,再赋值子表外键,保存的方式。
必须同时保存。

解决方案 »

  1.   

    自己找到解答方案啦,使用LAST_INSERT_ID()函数
      

  2.   

    用自增字段用LAST_INSERT_ID()函数可以得到刚插入的值
      

  3.   

    你不是要批量插入的吗? 批量插入时,LAST_INSERT_ID() 只会取到一个。
      

  4.   

    写法不一致而已:看看insert jd_user(USER_NAME,USER_ACCOUNT,PASSWORD,
    FLAG) value ('wo','wo','123','1');
    insert jd_user(USER_NAME,USER_ACCOUNT,PASSWORD,
    FLAG) value ('wo','wo','123','1');
    insert jd_user(USER_NAME,USER_ACCOUNT,PASSWORD,
    FLAG) value ('wo','wo','123','1');
    select LAST_INSERT_ID();//返回最后一个insert后的id
    insert jd_user(USER_NAME,USER_ACCOUNT,PASSWORD,
    FLAG) values ('wo','wo','123','1'),('wo','wo','123','1'),
    ('wo','wo','123','1');
    select LAST_INSERT_ID();//返回第一个insert后的id
      

  5.   


    无语, 我以为一条sql搞定, 还是得分两条,