Я пытаюсь подготовить сложный запрос, используя WITH в perl к базе данных Oracle, и продолжаю получать ошибку при подготовке.
DBD :: Proxy :: st выполнить не удалось: сервер вернул ошибку: Не удалось выполнить метод CallMethod: DBD :: Oracle :: db Подготовка не удалась: ORA-00911: недопустимый символ (ОШИБКА DBD: ошибка, возможно, около <*>
Вот sql я пытаюсьподготовить:
my $sql = <<EOT;
;WITH GCG as (
SELECT FIRST_NAME, CONFIRMATION,EMAIL,
row_number() over (partition by EMAIL order by (1)) gemail
FROM GENERAL_VIEW
WHERE
CONFIRMATION is not null
AND TO_CHAR(INSERT_DATE, 'YYYY-MM-DD HH24:MI:SS') <= ?
AND TO_CHAR(INSERT_DATE, 'YYYY-MM-DD HH24:MI:SS') >= ?
AND EMAIL is not null
)
SELECT FIRST_NAME, CONFIRMATION,EMAIL FROM GCG WHERE gemail=1;
EOT
Я выполнил запрос в DataGrip и получил результат. Кажется, что может быть нюанс Perl мне не хватает.
У любого есть идеи, которые могли быпомогите мне?
Заранее спасибо.