--- In [email protected], Helen Borrie <helebor@...> wrote:
>
> At 05:19 PM 16/01/2012, homerjones1941 wrote:
> >I've searched past posts, but haven't been able to find solution.
> >
> >I have a Time FieldType in a FB 2.1 DB and have been unable to insert a time 
> >value into that field. I've tried the following (Note: I've resulted to hard 
> >coding the values to eliminate possible formatting issues caused by me):
> >
> >  FieldByName('AlarmTime').Value := '4:30:00 PM';
> >  FieldByName('AlarmTime').Value := '11:30:00 PM'; 
> 
> Not a valid TIME literal.  The format uses the 24-hr clock and takes the form
> hh:nn:ss.nnnn or hh:nn:ss.nnn
> 
> If you don't care about sub-seconds, use zeroes there.
> 
> >Error message is '0.0 is not a valid Timestamp.'
> 
> If you are absolutely sure that column is TIME and not TIMESTAMP then I would 
> guess you are using the (broken) old BDE.  The last-ever was v.5.2 and the 
> Dialect 3 date/time support still didn't work properly.
> 
> >If I omit the "PM" the error message is similar.
> >  FieldByName('AlarmTime').Value := '4:30:00'; 
> 
> It's a gamble assigning any date or time values to the Value property of a 
> VCL parameter but in this case it's obviously not working because your 
> interface (whatever it is) doesn't recognise that as time literal.  If you 
> want to persevere, I suggest you try one of the following:
> FieldByName('AlarmTime').Value := QuotedStr ('04:30:00');
> FieldByName('AlarmTime').Value := ''04:30:00''; // doubled apostrophes NOT 
> double quotes
> 
> >Error Message is '693594. -1073258496 is not a valid Timestamp.'
> 
> And that's not a valid Firebird message, either.
> 
> >I've tried using TDateTime values with similar results.
> 
> Using AsDateTime???
> 
> ./heLen
>


Wow. Thanks for the quick response. I tried the "QuotedStr" solution but got 
yet another error: 'Could not convert variant of type (String) into type 
(Date).'

I try to stay as far away from BDE as possible. I'm using IBDac components (the 
latest Devart stuff). 

I haven't tried to create an "INSERT INTO" query, but that's next. Perhaps DSQL 
will handle the time field properly.

Reply via email to