sql >> Database teknologi >  >> RDS >> Oracle

PL/SQL-trigger for efter indsættelse, opdatering, sletning, der indtaster data i logtabel med en sekvens

Da du bruger sekvensværdien i insert-sætningen,

   INSERT INTO dd_paytrack
           (idtrack, pt_user, pt_date,
            pt_action, pt_payid
           )
    VALUES (idtrack_seq.NEXTVAL, USER, TO_CHAR (SYSDATE, 'DD-MON-YY'),
            log_action, id_pay
           );

det er ikke nødvendigt at vælge det som nedenfor.

SELECT idtrack_seq.NEXTVAL
 INTO :NEW.idtrack
 FROM DUAL;

Du har også misset et kolon på denne linje,

      id_pay := :OLD.idpay;

EDIT:En ting mere, det nytter ikke noget at have DBMS_OUTPUT-sætningen i triggeren. Da du ikke vil se det, selvom udførelsen når det.



  1. Portering af Oracle PL/SQL til Snowflake uden JavaScript

  2. Indsættelse af flere rækker i mysql

  3. Sådan ændres ikke-redigerbar/genereret kode i netbeans

  4. Dublet unicode-indtastningsfejl på den unikke kolonne - mysql