Incorrect time value: '10:41:03 AM' for column 'endtime' at row 1.
Having an issue with an update query. Using a table method worked fine in the past.
*** This works fine
Datamodule1.MyCM.edit;
Datamodule1.MyCM.fieldbyname('status').value:= 'Complete';
Datamodule1.MyCM.fieldbyname('endtime').value:= timetostr(now);
Datamodule1.MyCM.post;
*** This works fine
Datamodule1.MyCMQ.sql.Clear;
Datamodule1.MyCMQ.sql.add('UPDATE casemaster SET status = "Complete"');
Datamodule1.MyCMQ.sql.add(' where autoid =' + autoid.text);
Datamodule1.MyCMQ.Execute;
*** This fails with:
Incorrect time value: '10:41:03 AM' for column 'endtime' at row 1.
Datamodule1.MyCMQ.sql.Clear;
Datamodule1.MyCMQ.sql.add('UPDATE casemaster SET endtime = '+ quotedstr(timetostr(now)));
Datamodule1.MyCMQ.sql.add(' where autoid =' + autoid.text);
Datamodule1.MyCMQ.Execute;
MySQL data type is TIME
MyDac 3.55.0.26 for D7
MSQL 5.0.45
Thanks !
Scott
Incorrect time value
-
norfintork
- Posts: 11
- Joined: Wed 21 Jun 2006 20:12
- Location: Southeast Michgian
-
eduardosic
- Posts: 387
- Joined: Fri 18 Nov 2005 00:26
- Location: Brazil
Re: Incorrect time value
See the time format in Control Panel of Windows..norfintork wrote:Incorrect time value: '10:41:03 AM' for column 'endtime' at row 1.
Having an issue with an update query. Using a table method worked fine in the past.
*** This works fine
Datamodule1.MyCM.edit;
Datamodule1.MyCM.fieldbyname('status').value:= 'Complete';
Datamodule1.MyCM.fieldbyname('endtime').value:= timetostr(now);
Datamodule1.MyCM.post;
*** This works fine
Datamodule1.MyCMQ.sql.Clear;
Datamodule1.MyCMQ.sql.add('UPDATE casemaster SET status = "Complete"');
Datamodule1.MyCMQ.sql.add(' where autoid =' + autoid.text);
Datamodule1.MyCMQ.Execute;
*** This fails with:
Incorrect time value: '10:41:03 AM' for column 'endtime' at row 1.
Datamodule1.MyCMQ.sql.Clear;
Datamodule1.MyCMQ.sql.add('UPDATE casemaster SET endtime = '+ quotedstr(timetostr(now)));
Datamodule1.MyCMQ.sql.add(' where autoid =' + autoid.text);
Datamodule1.MyCMQ.Execute;
MySQL data type is TIME
MyDac 3.55.0.26 for D7
MSQL 5.0.45
Thanks !
Scott
or in the application set the time format in application.
-
norfintork
- Posts: 11
- Joined: Wed 21 Jun 2006 20:12
- Location: Southeast Michgian
-
eduardosic
- Posts: 387
- Joined: Fri 18 Nov 2005 00:26
- Location: Brazil
use parameters:norfintork wrote:The Windows time format checks out. Using the table method (which works) vs. the query, the time is stored as 14:14:14. What is differnet about the way quotedstr(timetostr(now))) is stored with a table write vs. a query write?
with Datamodule1.MyCMQ do begin
Sql.Clear;
Sql.add('UPDATE casemaster SET endtime = :end_Time'
Sql.add(' where autoid =' + autoid.text);
ParamByName( 'end_Time' ).AsDateTime := now;
Execute;
end;
parameters convert the time for a correct format.
-
norfintork
- Posts: 11
- Joined: Wed 21 Jun 2006 20:12
- Location: Southeast Michgian
-
eduardosic
- Posts: 387
- Joined: Fri 18 Nov 2005 00:26
- Location: Brazil
-
norfintork
- Posts: 11
- Joined: Wed 21 Jun 2006 20:12
- Location: Southeast Michgian