Skip to main content
Known Participant
December 11, 2015
Question

The data types time and datetime are incompatible in the equal to operator?

  • December 11, 2015
  • 1 reply
  • 1392 views

I have my simple cfquery that should delete records base on the date, start time and end time that have been passed with the arguments. My cfquery looks like this:

<cfquery name="qryDelete" datasource="test">
  
Delete From Table
  
Where DateS = <cfqueryparam cfsqltype="cf_sql_date" value="#arguments.DateSch#">
  
and Start = <cfqueryparam cfsqltype="cf_sql_time" value="#arguments.Stime#">
  
and End = <cfqueryparam cfsqltype="cf_sql_time" value="#arguments.Etime#">
</cfquery>


I tried to output my argument values, they look like this:

DateSch
12/10/2015
Etime 
08:25 AM
Stime 
08:00 AM


For some reason after I tried to delete records I got an error that looks like this:

"The data types time and datetime are incompatible in the equal to operator"


I'm wondering why my date and times can not be compared with values in database. Should I convert or format my argument values differently before I pass them in my cfquery for deletion?

If anyone knows how this can be fixed please let me know. Thanks in advance.

This topic has been closed for replies.

1 reply

Inspiring
December 11, 2015

Are the data types in the database actually "date" and "time". Are you sure they are not "datetime" or "timestamp"?

pirlo89Author
Known Participant
December 11, 2015

Date is Data Type date, Start time is Data Type time(7) and End time is Data Type time(7).

Carl Von Stetten
Legend
December 13, 2015

Might help to know what DBMS platform you are working with.

-Carl V.