新来的?注意:
1。要搜索csdn论坛
2。要搜索csdn文档
3。要看faq
4。要看精华区类似的东西多着呢!

解决方案 »

  1.   

    --权限字典自动编号
    DROP SEQUENCE SEQ_POWERS;
    CREATE SEQUENCE SEQ_POWERS
    INCREMENT BY 1
    MINVALUE 1
    MAXVALUE 99999999999999
    NOCYCLE 
    NOCACHE
    ORDER;
    COMMIT;--权限字典自动创建编号
    CREATE OR REPLACE TRIGGER TRG_ADD_POWERS
    BEFORE INSERT ON T_POWERS
    FOR EACH ROW
    BEGIN 
      SELECT TO_CHAR(SEQ_POWERS.NEXTVAL) INTO :NEW.SN FROM DUAL;
    END TRG_ADD_POWERS;  
      

  2.   

    假如
    sequence为seq
    则编程时用seq.nextval
      

  3.   

    create or replace trigger triggername
    before insert on tablename
    for each row
    begin
        select sequencename.nextval into : new.columnname for dual;
    end;
    有错误吗?为什么老是编译不通过呢?触发器不区分大小写吧?难道是要设置参数?不懂,请教大虾指点!
      

  4.   

    把 FOR 改为 FROM 就行了
      

  5.   

    仅仅是for这里错了吗?可能我发贴子的时候手误了,假如
    create or replace trigger triggername
    before insert on tablename
    for each row
    begin
        select sequencename.nextval into : new.columnname from dual;
    end;一定正确吗?需要设置参数吗?我用的oracle是8.1.6的(可能是)