Я создал процедуру для поиска даты между today
и expiry_date
.
Формат столбца таблицы уже в формате даты.
При создании процедуры она успешно создается без ошибок, но при выполнении процедуры, как показано ниже, отображается
ORA-01858: не числовой символ был найден там, где ожидалось число
ALTER SESSION SET NLS_DATE_FORMAT ='dd-mm-yyyy';
CREATE OR REPLACE PROCEDURE flow (
today IN DATE,
expiry_date IN DATE
) AS
BEGIN
FOR rec in (
SELECT *
FROM flow4
WHERE englishcalendar BETWEEN 'englishcalendar.today'
AND 'englishcalendar.expiry_date')
LOOP
dbms_output.put_line(rec.englishcalendar);
END LOOP;
EXCEPTION
WHEN OTHERS THEN
dbms_output.put_line(sqlerrm);
END;
/
EXEC FLOW('01-02-2017','03-04-2018');
/
Я также пытался добавить to_date как при выполнении процедуры, так и при выполнении процедуры, но получил ту же ошибку
Я тоже пытался с этой ссылкой тоже
Ошибка при получении - ORA-01858: не числовой символ был найден там, где ожидалось числовое значение
ПРИМЕЧАНИЕ englishcalendar
содержит непрерывный день 2019 года в формате даты «дд-мм-гггг»