sql >> Database >  >> RDS >> Oracle

Oracle-triggerfout ORA-04091

U wijzigt de tabel met de trigger. Gebruik een before update trigger:

CREATE OR REPLACE TRIGGER Aktien_Bilanz_Berechnung
BEFORE INSERT OR UPDATE OF TAGESKURS OR INSERT OR UPDATE OF  WERT_BEIM_EINKAUF
ON AKTIE
FOR EACH ROW
DECLARE
    v_bfr number;
BEGIN
    v_bfr := :new.TAGESKURS - :new.WERT_BEIM_EINKAUF;
    :new.BILANZ := v_bfr;
    IF v_bfr < -50 THEN
      Raise_Application_Error(-20456,'ACHTUNG: The value (Nr: '|| :new.AKTIEN_NR || ') is very low!');
    END IF;
END;


  1. STRCMP() gebruiken om 2 strings in MySQL te vergelijken

  2. Queryresultaten exporteren naar een XML-bestand bij gebruik van SQLcl (Oracle)

  3. Tijdstempel met een precisie van milliseconden:hoe u ze opslaat in MySQL

  4. Bij dubbele sleutelupdate hetzelfde als invoegen