表1的ID不用自增主键,表2的ID用自增主键:declare @max_id integer;
set @max_id=(select max(ID)+1 from 表1);
insert into 表1(ID,Title,Content) values(@max_id,?,?);
insert into 表2(Detail,FID) values(?,@max_id);// 以上为SQL Server 2000可执行通过

解决方案 »

  1.   

    请问你什么数据库?
    如果用oracle就比较好办。
    如果用其他的,我觉得你最好把Title与Content的组合设为unique index。这样才好根据已知的title和content取回夫表的id。
      

  2.   

    楼上的用到存储过程了,
    我在javabean中直接写sql语句该怎么实现?
    用那个方法是不是会多有线程问题?
      

  3.   

    表1的ID不用自增主键,表2的ID用自增主键:declare @max_id integer;
    set @max_id=(select max(ID)+1 from 表1);
    insert into 表1(ID,Title,Content) values(@max_id,?,?);
    insert into 表2(Detail,FID) values(?,@max_id);// 以上为SQL Server 2000可执行通过好象有个并发问题!不过几率不大
      

  4.   

    SQL SERVER里有个全局变量@@IDENTITY返回最后插入行的标志(就是你的ID,ID要求是种子、主键)的值insert into t1 values...
    select @@identity from t1