Datenbankschema
CREATE TABLE Konto ( firnr int4, knr varchar(20), bezeichnung varchar(60), anfang numeric(10,2) default '0.0', sumsoll numeric(10,2) default '0.0', sumhaben numeric(10,2) default '0.0', art char(1), PRIMARY KEY (firnr,knr) );
| art | beschreibung | geht ein in | berechnung saldo |
| A | Aktiv-Konto | Billanz | bestand=anfang+sumsoll-sumhaben |
| P | Passivkonto | Billanz | bestand=anfang+sumhaben-sumsoll |
| W | Aufwandskonto | GuV | saldo=sumsoll-sumhaben |
| E | Ertragskonto | GuV | saldo=sumhaben-sumsoll |
Wie in [Scheer95] wird die an sich logische Vererbungshierarchie
Konto
|
---------------
| |
Billanzkonto Erfolgskonto
| | | |
Aktiv Passiv Aufwand Ertrag
nicht im Schema berücksichtigt.
Die hier verwendente Datenbank Postgres kann leider kein UPDATE auf Unterklassen.
Die Unterscheidung muß daher in der Anwendungslogik erfolgen.
CREATE TABLE Bankkonto ( firnr int4, knr varchar(20), blz char(10), kto char(15), bktyp char(1) );Debitoren und Kreditoren sind weitere wichtige Unterklassen, die hier noch nicht definiert sind.
Konvention: