Я пытаюсь создать в Oracle триггер, который сравнивает две даты, а затем удаляет записи, если разница двух дат падает ниже определенного значения. У меня есть полное значение даты в формате «DD-MON-YYYY HH24MI», а затем для второго значения даты я хочу объединить значение «DD-MON-YYYY» со значением «HH24MI».
Проблема, которую я получаю, состоит в том, что, когда я пытаюсь объединить значение даты и времени вместе, используя to_char, а затем используя to_date для этого возвращаемого значения, это дает мне ошибку формата ORA-01481 недопустимого числа. Соответствующие строки из самого триггера находятся ниже. Если кто-то может помочь мне с этим, это будет очень ценно!
CREATE OR REPLACE TRIGGER dateTrig
...
DECLARE
day date;
ftime date;
CURSOR c_table1 IS SELECT ...;
BEGIN
FOR entry IN c_table1 LOOP
day := to_date(entry.fdate);
ftime := to_date(to_char(day, 'DD-MON-YYYY') || ' ' || to_char(entry.dtime, 'HH24MI'), 'DD-MON-YYYY HH24MI'); -- this is the line that is causing the error
dbms_output.put_line(day || ', ' || ftime);
END LOOP;
END;
/