TFloatField
Posted: Thu 10 Dec 2009 10:28
We're investigating your product as part of a fairly complicated migration procedure. We have an existing suite of delphi applications talk to an Oracle backend via DOA.
We're looking at talking to a MSSQL db and an Oracle db backend from the same code, which is where the UniDAC components come in. For the main part I have very quickly managed to get UniDAC talking to both MSSQL and Oracle without issue, however I'm having issues with floats / integers.
In our current oracle database all our ID fields are declared as number(9), these have been migrated into our MSSQL database as numeric(9,0). We need this type due to the precision (length of numbers). In our current delphi implmentation these are represented as TFloatfield which seems to work for MSSQL however when talking to Oracle I get the following error message;
'Expecting Float actual integer'
Within the help that came with trial under the page 'Using UniDAC with Oracle' there is a section on TUniConnection;
This would imply to do exactly what we need .. however it is not a property on the Connection component and when I try do something like;
It doesn't work either. Am I missing something or is there another way to go about this?
We're looking at talking to a MSSQL db and an Oracle db backend from the same code, which is where the UniDAC components come in. For the main part I have very quickly managed to get UniDAC talking to both MSSQL and Oracle without issue, however I'm having issues with floats / integers.
In our current oracle database all our ID fields are declared as number(9), these have been migrated into our MSSQL database as numeric(9,0). We need this type due to the precision (length of numbers). In our current delphi implmentation these are represented as TFloatfield which seems to work for MSSQL however when talking to Oracle I get the following error message;
'Expecting Float actual integer'
Within the help that came with trial under the page 'Using UniDAC with Oracle' there is a section on TUniConnection;
Code: Select all
EnableIntegers : When set to True, the provider maps Oracle numbers with precision less than 10 to TIntegerField. If EnableIntegers is set to False, numbers are mapped to TFloatField or XXX.
Code: Select all
fDBSession.SpecificOptions.Values['EnableIntegers'] := 'False';