Я создаю одно представление в Oracle 12.2.0.1.0 и добавляю в свое представление следующее условие:
WHERE trunc(whenmodified) = TO_DATE('&userinput', 'DDMMYYYY')
whenmodified имеет тип даты.
Я ожидал получить сообщение об ошибке, когда пользовательский ввод не в формате «DDMMYYYY». Но для ввода типа 14142020 нет ошибки, и представление создается. Я ожидал следующую ошибку: ORA-01843: недопустимый месяц
01843. 00000 - "not a valid month"
*Cause:
*Action:
Я использую SQL DEVELOPER для этого.
user_formatted_date generate always as to_char(whenmodified, 'DDMMYYYY')
, если хотите упростить написание запросов с помощьюwhere user_formatted_date = :userinput
. - person Thorsten Kettner   schedule 20.03.2020