Tipps&Tricks Unique für proNet START
[an error occurred while processing this directive][an error occurred while processing this directive]
zurück 
 
Kategorie: DBMS spezifisch: Informix Dynamic Server
Fall: 15Plattform: AlleBetriebssystem: Alle
Dezimalstellen sind nach dem Speichern verschoben
 
Es ist ein Feld mit Unique CONCEPT Speicherformat Packed Decimal(m.n), Unpacked Decimal(m,n) oder Money, bzw. den Informix Datentypen decimal(m,n) oder money(m,n) definiert. Ein Wert mit Nachkommastellen wird eingeben und scheinbar korrekt in der Datenbank gespeichert, beim erneuten Lesen des Datensatzes ist der Dezimalpunkt um mehrere Stellen nach links oder rechts verschoben.

Dies liegt üblicherweise an einer falschen Definition des Dezimalpunktes. Der Dezimalpunkt hängt zunächst von der Informix Umgebungsvariable CLIENT_LOCALE ab, bei amerikanischen Einstellungen, z.B. en_us.8859-1 wird als Dezimalpunkt ein Punkt verwendet wie im englischsprachigen Raum üblich. Bei deutschen Einstellungen, z.B. de_de.cp1252, wird als Dezimalpunkt ein Komma verwendet wie im deutschsprachigen Raum üblich. Mit der Informix Umgebungsvariable DBMONEY kann der Dezimalpunkt (samt Währungszeichen) separat definiert werden. DBMONEY gilt dabei nicht nur für Money-Felder, sondern für alle numerischen Datentypen mit Nachkommastellen. Definieren Sie DBMONEY=DM., um bei deutschen Einstellungen mit einem Dezimalpunkt zu arbeiten, oder DBMONEY=$,, um bei amerikanischen Einstellungen mit einem Dezimalkomma zu arbeiten.

Die Informix-Datenbankschnittstelle in Unique CONCEPT erwartet immer einen Dezimalpunkt, so dass Sieauch bei deutschen Einstellungen DBMONEY=DM. definiert haben müssen.


(Siehe auch Fall:14 Korrekte GLS/Locale-Einstellungen für Unique CONCEPT/Deutsch)

 
Letzte Änderung: 27. September 2000
[an error occurred while processing this directive][an error occurred while processing this directive][an error occurred while processing this directive]
 
zurück 

©2014 proNet Informationssysteme GmbH, alle Rechte vorbehalten.