Subject | Int64 problem |
---|---|
Author | Doug Chamberlin |
Post date | 2002-07-12T18:31:14Z |
I have a Firebird 1.0 database (using Dialect 3) with several fields being
filled via generators. These fields are declared as NUMERIC(18,0) which
presumably means they are stored as 64-bit integers.
In my Delphi program I use a TTable to access all the TField objects. For
the above described fields the TField.DataType comes through as ftBytes
with a TField.DataSize = 1. I expected at least the DataSize to be 8 (for 8
bytes).
Could it be the DataSize varies depending on the actual values which are
stored? (I know the actual values are small at this point.)
Anyone else see this? Anyone know how to get the Int64 value from the
field? TField.AsInteger fails completely with an exception.
Using Delphi 5 with updates applied and BDE 5.2.
filled via generators. These fields are declared as NUMERIC(18,0) which
presumably means they are stored as 64-bit integers.
In my Delphi program I use a TTable to access all the TField objects. For
the above described fields the TField.DataType comes through as ftBytes
with a TField.DataSize = 1. I expected at least the DataSize to be 8 (for 8
bytes).
Could it be the DataSize varies depending on the actual values which are
stored? (I know the actual values are small at this point.)
Anyone else see this? Anyone know how to get the Int64 value from the
field? TField.AsInteger fails completely with an exception.
Using Delphi 5 with updates applied and BDE 5.2.