Счетчик не работает в триггере, используя условие - PullRequest
0 голосов
/ 07 мая 2019

Привет, подскажите, пожалуйста, я пытаюсь проверить, если счет = 2 Когда условие соответствует (DA.matr_ID = '478') или (DA.matr_ID = '40'), тогда вставить в таблицу, но в любом состоянии, например (DA.matr_ID = '479'), вставить неверные данные

CREATE OR REPLACE TRIGGER DEVICE_TMP_TR
  AFTER INSERT OR UPDATE ON DEVICE_ATTRIBUTES_TMP
  REFERENCING OLD AS old NEW AS new
  FOR EACH ROW
DECLARE
pragma autonomous_transaction;
V_COUNT NUMBER;
BEGIN
  SELECT COUNT(*) 
     INTO V_COUNT  
  FROM DEVICE_ATTRIBUTES_TMP DA 
  WHERE DA.DVS_ID = :new.DVS_ID 
   AND (DA.matr_ID = '40' or DA.matr_ID = '478');

  IF V_COUNT = 2 THEN
    INSERT Into APP_DELETED_TMP    
      (sdmid,appid,devis,des_nr,creation_date,creation_user,ant_id) 
    VALUES
      ('121213', '23', '45','63',SYSDATE,'hhdhSH',21);
    COMMIT;
  ELSE 
    RETURN;
  END IF;
END;
...