Lude: Eurich in Datenbank

Beitrag lesen

Hi, Michael,

2.) Bei der Verwendung des Datentypes INT wird (zwangslaeufig) (nach Murphy) das Datenfeld "Cent" in einigen Datensaetzen einen Wert >= 100 annehmen.

ich habe niemals empfohlen, zwei Felder nehmen.

Deine in ANLAGE1 zitierte Aussage war missverstaendlich.

3.) "Rundungsfehler" sind normal, dass heisst es muss bei finanzmathematischen Berechnungen ggf. gerundet werden. Oder hab' ich da was missverstanden?

Aber _wie_ gerundet werden muß, entscheidet der Gesetzgeber - nicht die Datenbank-Implementierung.

Das _wie_ entscheidet die DB-Implementierung; der Gesetzgeber prueft. (Klingt etwas zynisch, aber harte Realitaet bei den Finanzdienstleistern :-)

4.) Performanceueberlegungen spielen beim DB-Design (erst einmal) keine Rolle. Man bildet einen zu unterstuetzenden Vorgang der "Realitaet" bestmoeglich ab.

Eben. Und die Realität ist, daß Geld in Integer existiert und nicht in Float.

Genau. Ist NUMERIC aber INT? Und wenn Du einen INT-Typ verwendest brauchst Du zwei DFs. (Aussagen beziehen sich auf DB(M)Systeme)

Gruss,
Lude

ANLAGE1:

(Lude)

das Nutzen von zwei Datenfeldern, wenn eins ausreichen wuerde, ist eine Todsuende. Eins reicht im genannten Fall aus (Die Verwendung eines INT-Datentyps fuer die Cents waere zudem grausig).

(MS)

warum? Es ist die einzige Möglichkeit, Rundungsfehler definitiv auszuschließen. Und nebenbei ist Integer-Arithmetik sogar schnell ...