Hi, Michael,
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).
warum? Es ist die einzige Möglichkeit, Rundungsfehler definitiv auszuschließen. Und nebenbei ist Integer-Arithmetik sogar schnell ...
ich vermute mal, dass Du Dich auf den zweiten Satz meines Postings bezogen hast:
1.) Ich plaediere (entschieden) fuer das Nutzen des Datentyps NUMERIC(18,2) fuer Geldbetraege.
2.) Bei der Verwendung des Datentypes INT wird (zwangslaeufig) (nach Murphy) das Datenfeld "Cent" in einigen Datensaetzen einen Wert >= 100 annehmen.
3.) "Rundungsfehler" sind normal, dass heisst es muss bei finanzmathematischen Berechnungen ggf. gerundet werden. Oder hab' ich da was missverstanden?
4.) Performanceueberlegungen spielen beim DB-Design (erst einmal) keine Rolle. Man bildet einen zu unterstuetzenden Vorgang der "Realitaet" bestmoeglich ab.
5.) Performanceueberlegungen in diesem konkreten Fall fuehren (eindeutig) zu keinem Handlungsbedarf.
Morgendliche Gruesse,
Lude