begin
   SELECT PWSPLY_SEQ.NEXTVAL
     INTO :NEW.SPLYBUREAUID
     FROM DUAL;
     insert into sysgroup(groupname,SPLYBUREAUID)values('管理组',NEW.SPLYBUREAUID);
End TRG_cata0;我用这个代码有错嘛

解决方案 »

  1.   

    select PWSPLY_SEQ.currVAL from dual; 获取你的自增序列的当前值。不必这样使用序列。可以直接使用
    insert into sysgroup(groupname,SPLYBUREAUID)values('管理组',PWSPLY_SEQ.nextVAL );
      

  2.   

    可以直接用一句话即可insert into sysgroup(groupname,SPLYBUREAUID)values('管理组',PWSPLY_SEQ.nextVAL ) returning SPLYBUREAUID;
    然后查询splybureauid的值 即可,这样数据起码在事务级别上是一致的。而且效率还高。
      

  3.   

    insert into sysgroup(groupname,SPLYBUREAUID)values('管理组',PWSPLY_SEQ.nextVAL ) returning SPLYBUREAUID;
    可以直接使用RETURNING这个方法。