Я пытаюсь выбрать из таблицы с двумя датами, датами начала и окончания в Oracle 11g. я писал:Использование дат в Coldfusion 1 и Oracle 11g
SELECT *
FROM mytable
WHERE date_received BETWEEN <cfqueryparam cfsqltype="cf_sql_date"
value="#CreateODBCDate(Form.startDate)#">
AND <cfqueryparam cfsqltype="cf_sql_date"
value="#CreateODBCDate(Form.EndDate)#">
Я получил сообщение об ошибке:
Ошибка Выполнение запроса базы данных. [Macromedia] [Драйвер Oracle JDBC] Ошибка конверсии. Параметр даты или времени недоступен. Когда я вхожу StartDate: 09122014 & дата окончания: 09122015 я: Дата начала: {d '26875-03-22'} дата конец: {d '27176-05-24'}
Тогда я попытался to_date функция Oracle 11g:
SELECT *
FROM mytable
WHERE date_received BETWEEN <cfqueryparam
cfsqltype="cf_sql_date" value="#to_date(Form.startDate,
'DD-MM-YY')#">
AND <cfqueryparam cfsqltype="cf_sql_date"
value="#to_date(Form.EndDate, 'DD-MM-YY')#">
Я получил эту ошибку: переменная to_date не определен
Как я могу сделать выбор в ColdFusion с Oracle 11g обратно конец? У меня не было этой проблемы, когда они все еще используют Sybase.
Я хочу поблагодарить вас за отзыв. Я никогда не знаю, что могу сделать: TO_DATE ( , 'MMDDYYYYY' ) –
MGL
Добро пожаловать. Даже если вы решите пойти с TO_DATE, вы должны все еще проверить входную строку в CF перед запросом. Не нужно тратить вызов db, если строка завершится с ошибкой TO_DATE. – Leigh