[Oracle-Datenbank] Float-Problem

Für allgemeine Fragen zur Programmierung mit PureBasic.
es_91
Beiträge: 411
Registriert: 25.01.2011 04:48

[Oracle-Datenbank] Float-Problem

Beitrag von es_91 »

Hallo.

Ich habe eine Oracle-ODCB-Datenbank. In ihr liegen Werte, die bis zu 38 Stellen über dem Null haben können:

Bild

... Ein Bild aus dem Oracle SQL-Developer. Ihr seht die Number(38) - Datentypen. Genau um diese geht es.

Mit PureBasic kann ich problemlos auf die Datenbank zugreifen und die Datensätze abfragen und auswerten. Allerdings werden die Datentypen, die im Bild oben als Number angezeigt werden, als Floats behandelt. Deren Werte sind aber so groß, dass die Floats den Wert nicht genau abbilden können. Es handelt sich bei Zeile 1 um Werte wie 8619216 oder 8620156 und bei Zeile zwei immer um 120. Die 120 kann noch korrekt als 120.00 ausgegeben werden (mit StrF(Number, 2)), die 8619216 wird aber bei PureBasic etwa zu 8619220.00.

Was kann ich tun, um den korrekten Wert auszulesen?
Benutzeravatar
Bisonte
Beiträge: 2476
Registriert: 01.04.2007 20:18

Re: [Oracle-Datenbank] Float-Problem

Beitrag von Bisonte »

Schon probiert diese Felder als String auszulesen ?

Dann wäre es ein leichtes dieses Zahlenformat (ich gehe davon aus, dass es ID's sind - also keine Zahlen mit Nachkommastellen) in eine Quad Variable zu
legen. Wobei, wenn man mit diesen Zahlen nicht rechnen will oder muss, braucht man das auch nicht und kann sie als String belassen.
PureBasic 6.21 (Windows x86/x64) | Windows11 Pro x64 | AsRock B850 Steel Legend Wifi | R7 9800x3D | 64GB RAM | GeForce RTX 5080 | ThermaltakeView 270 TG ARGB | build by vannicom​​
es_91
Beiträge: 411
Registriert: 25.01.2011 04:48

Re: [Oracle-Datenbank] Float-Problem

Beitrag von es_91 »

Ai, das geht ja wirklich. :lol:

Hey vielen Dank, Bisonte! :allright:
Antworten