估计是你的ID重复了.我不知你为何将id设为getRow()+1000
一般情况下,我会用Sequence来作为一个表唯一的ID

解决方案 »

  1.   

    oracle 如何设置自动编号??
    id设为getRow()+1000 有缺陷可能问题出现在这里。
      

  2.   

    先建一序列:
    CREATE SEQUENCE ncldl_user_id
    INCREMENT BY 1  -- 每次加几个 
    START WITH 1   -- 从1开始计数 
    NOMAXVALUE    -- 不设置最大值 
    NOCYCLE     -- 一直累加,不循环 
    然后在insert into 中写
    insert into ncldl_user (id,...) values(ncldl_user_id.nextval,...);
    这样可以得到每次加1的id
    (你要每次1000也可以只要INCREMENT BY 1000)