Skip to main content
Known Participant
Dec 11, 2015 2:20 AM UTC
Question

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

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 is closed to new replies. Start a new post to keep the conversation going.

3 replies

Inspiring
Dec 11, 2015 8:40 AM UTC

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

Translate
pirlo89Author
Known Participant
Dec 11, 2015 1:15 PM UTC

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

Translate
Carl Von Stetten
Legend
Dec 13, 2015 4:10 AM UTC

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

-Carl V.

Translate