больше, чем использовать DateFormat, используйте createODBCDate()
.
<cfset myDate = createODBCDate(date)>
Это преобразует вашу дату в формат, который может быть передан в любую БД, включая Oracle
Ошибка, которую выполучают, потому что вы пытаетесь передать значение даты в виде таблицы столбцов.
Лично я не использую cfinsert .. Я бы сделал (и предпочел) что-то вроде этого.
<cfquery name="insert_vet" datsource="#ds#">
INSERT INTO visit (visit_id, myDate, visit_comments)
VALUES (<cfqueryparam value="#form.visit_id#" cfsqltype="cf_sql_integer" >,
<cfqueryparam value="#createODBCDate(form.myDate)#" cfsqltype="cf_sql_date" >,
<cfqueryparam value="#form.visit_comments#" cfsqltype="cf_sql_varchar" >)
</cfquery>
Вам не нужно использовать <cfqueryparam
для запуска, но поместите их перед запуском, чтобы предотвратить SQL-инъекцию.
Редактировать 1 Похоже, чтополучить немного из-под контроля .. возможно, вернитесь к чистому сценарию и начните с простого SQL-оператора вставки и посмотрите, что это даст вам ..
<cfquery name="insert_vet" datsource="???" username="???" password="???">
INSERT INTO visit (visit_id, myDate, visit_comments)
VALUES (#form.visit_id#,#createODBCDate(form.myDate)#, #form.visit_comments#)
</cfquery>