G'day,
Not sure where to post this question. I'm using ZEOS lib 7.1.0-alfa, Laz 1.0/FPC 2.6.0, Win XP 64 bit. However, I've been seeing this for at least the past two years on both 32bit and 64 bit machines. First saw it with ZEOS lib 6.6.
Connecting to Oracle 11.2.0.1.0
Components in use TZConnection (protocol set to either Oracle or Oracle-9i - no change either way) and TZQuery.
When I fire off the following sql
Select Count(*) As "Count"
From RandomTable
If the result is more than around 30, I get a 1E2 in my return value. Same goes for any sort of calculated field, and when I say calculated, I mean calculated server side, not client side.
My workaround for the past few years has been to write my SQL as
Select Count(*) || '' As "Count"
From RandomTable
Sure, I get my value back as a string, but at least I get the correct value.
Now - I'm not in a position where I can predefine my Query.Fields, and I suspect this is the key reason why I'm getting the return values in scientific notation. My fields are being dynamically created by TZQuery when execute the SQL. I suspect if I'd predefined the field as an Integer, it would all work.
This is only really for a hobby app, which is why I've been living with this for so long :-)
Finally, my question: Has anyone else seen this behaviour, and if so, how did you workaround/resolve?
And another question: Anyone idea the correct place for me to post this?