Registriert seit: 16. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
Delphi 2007 Professional
|
AW: XE5 liest Oracle-Floats falsch aus
6. Nov 2013, 09:01
Tja, Dezimalfelder sind ein echter Schwachpunkt von Delphi.
Gerade bei Oracle hatte ich damit auch schon öfters Probleme.
Delphi kennt ja den Datentyp Currency; ein Festkommaformat mit dezimalen 4 Nachkommastellen (64 Bit).
Leider gibt es in Delphi keinen Festkommadatentyp mit 128Bit wie z.B. Decimal in C#.
Wenn du auf ein BCD-Feld zugreifst dann solltest du es mit .AsCurrency
und nicht als .AsFloat
oder .Value
auslesen.
Achte auch darauf ob in der Felddefinition in Oracle mehr als 4 Nachkommastellen hinterlegt sind; notfalls auf max 4 Stellen verringern.
|