I have a Delphi XE application, which accesses an Oracle XE database using a TClientDataSet and a TDataSetProvider plus a TADOQuery behind it.
The table I want to write into has a NUMBER(19) field.
I am writing a value into it like this:
myDataModule.myClientDataSet.FieldByName('ID').AsLargeInt := ID;
Let’s say I have an ID like 1234567890123456789 it gets rounded to 1234567890123460000.
How can I avoid that?
I decided to throw away the
TClientDataSetandTDataSetProviderand use theTADOQuerydirectly to insert the values.I.e. I have something like this now:
Not a perfect solution but it works.