Отображается ОШИБКА PL/SQL: ORA-00947: недостаточно значений

Пожалуйста, помогите мне, как ввести правильные значения? Поскольку значение всегда меньше и показывает недостаточное количество значений ERR, ошибка здесь

Вот мой код:

      CREATE OR REPLACE TRIGGER REGION_HILMI_TRIGGER_WARNING
AFTER INSERT OR UPDATE OR DELETE ON REGION_HILMI
FOR EACH ROW
DECLARE 
warning VARCHAR2(400);
BEGIN 
IF INSERTING THEN 
warning:='Terjadi penambahan data di tabel regions, dengan
nilai region_id='||:NEW.region_id||' dan 
region_name='||:NEW.region_name; 
ELSIF UPDATING THEN 
warning:='Terjadi perubahan data di tabel regions, dengan 
nilai lama region_id='||:OLD.region_id||', 
region_name='||:OLD.region_name||' nilai baru 
region_id='||:NEW.region_id||', region_name='||:NEW.region_name;
ELSIF DELETING THEN 
warning:='Terjadi penghapusan data di tabel regions untuk 
region_id='||:OLD.region_id||' dan region_name='||:OLD.region_name; 
END IF; 
INSERT INTO REGION_HILMI_HISTORY(OLD_REGION_ID,OLD_REGION_NAME,NEW_REGION_ID,NEW_REGION_NAME,CHANGE_TIME,DESCRIPTION)
    VALUES(REGION_HILMI_SEQUENCE.NEXTVAL,USER,TO_CHAR(SYSDATE,'DD-MON-YYYY HH24:MI:SS'),warning);
END; 
/

3 ответа

Ваш оператор INSERT показывает только 4 элемента в VALUESпункт, но 6 в списке имен столбцов. Они оба должны совпадать.

спасибо, сэр, @TenG решил добавить эти сценарии:

      INSERT INTO REGION_HILMI_HISTORY(OLD_REGION_ID,OLD_REGION_NAME,NEW_REGION_ID,NEW_REGION_NAME,CHANGE_TIME,DESCRIPTION)

    
VALUES(REGION_HILMI_SEQUENCE.NEXTVAL,:OLD.REGION_NAME,:NEW.REGION_ID,:NEW.REGION_NAME,TO_CHAR(SYSDATE,'DD-MON-YYYY HH24:MI:SS'),warning);

теперь я попытался вставить данные в свою основную таблицу, сэр,

но он показывает ошибку, подобную этой, после того, как я настроил триггер

нажмите, чтобы показать изображение

теперь это решено .... проблема с триггером,

я меняю (TO_CHAR) >>> (TO_DATE)

ошибка :

      VALUES(REGION_HILMI_SEQUENCE.NEXTVAL,:OLD.REGION_NAME,:NEW.REGION_ID,:NEW.REGION_NAME,TO_CHAR(SYSDATE,'DD-MON-YYYY HH24:MI:SS'),warning);

Работа :

      VALUES(REGION_HILMI_SEQUENCE.NEXTVAL,:OLD.REGION_NAME,:NEW.REGION_ID,:NEW.REGION_NAME,TO_DATE(SYSDATE,'DD-MON-YYYY HH24:MI:SS'),warning);
Другие вопросы по тегам