DB-Design / Buchhaltung

DB-Design / Buchhaltung

am 21.10.2005 08:46:14 von Mark Knochen

Hallo,

ich soll eine kleine Buchhaltung / Vermögensverwaltung progammieren.
Es soll Konten und Depots geben. Zusätzlich eine Tabelle, in der alle
Konten-Buchungen erfasst werden und eine Tabelle, in der alle
Depotbuchungen erfasst werden.

Ich bin mir nun nicht ganz sicher, was eleganter ist ... reichen die
beiden Buchungstabellen aus, da die Zuordnung zu den jeweiligen Konten
und Depots ja gewährleistet wird? Oder ist es sinnvoller für jedes Konto
und Depot noch eine zusätzliche Buchungstabelle anzulegen, in der dann
nur die jeweiligen Konten-/Depotbezogenen Buchungen erfasst werden.

Vorteil Variante 1: Alle Buchungen sind in einer Tabelle.

Vorteil Variante 2: Dadurch das jedes Konto / Depot eine eigene
Buchungstabelle hat, könnte die Abfrage eines Kontoauszuges (also
die Listung aller Buchungn mit jeweiligen Beträgen und Saldoständen)
vielleicht schnellen von statten gehen - oder täusche ich mich da?

Wozu kann man da raten?

Danke


Mark

Re: DB-Design / Buchhaltung

am 21.10.2005 10:51:44 von Martin Klaffenboeck

Am Fri, 21 Oct 2005 08:46:14 +0200 schrieb Mark Knochen:

> Hallo,
>
> ich soll eine kleine Buchhaltung / Vermögensverwaltung progammieren.
> Es soll Konten und Depots geben. Zusätzlich eine Tabelle, in der alle
> Konten-Buchungen erfasst werden und eine Tabelle, in der alle
> Depotbuchungen erfasst werden.
>
> Ich bin mir nun nicht ganz sicher, was eleganter ist ... reichen die
> beiden Buchungstabellen aus, da die Zuordnung zu den jeweiligen Konten
> und Depots ja gewährleistet wird? Oder ist es sinnvoller für jedes Konto
> und Depot noch eine zusätzliche Buchungstabelle anzulegen, in der dann
> nur die jeweiligen Konten-/Depotbezogenen Buchungen erfasst werden.

Ich würde 2 Tabellen erstellen. Eine für die Buchungen und eine für
die Konten. Das wird dann verknüpft indem in der Buchungstabelle jeweils
die ID des Kontos mitgeführt wird, zu dem die Buchung gehört.

Ich denke das ist auch im Sinne der Normalisierung so.

lg,
Martin

Re: DB-Design / Buchhaltung

am 21.10.2005 11:11:16 von Uli Honal

Mark Knochen wrote:

> Es soll Konten und Depots geben. Zusätzlich eine Tabelle, in der alle=
=20
> Konten-Buchungen erfasst werden und eine Tabelle, in der alle=20
> Depotbuchungen erfasst werden.
>=20
> Ich bin mir nun nicht ganz sicher, was eleganter ist ... reichen die=20
> beiden Buchungstabellen aus, da die Zuordnung zu den jeweiligen Konten =

> und Depots ja gewährleistet wird? Oder ist es sinnvoller für jedes =
Konto=20
> und Depot noch eine zusätzliche Buchungstabelle anzulegen, in der dan=
n=20
> nur die jeweiligen Konten-/Depotbezogenen Buchungen erfasst werden.

Sofern die Details, die Du zu beiden Buchungsarten erfassen willst,
sich nicht unterscheiden, gehören sie sogar alle in eine Tabelle.
Ansonsten zwei, aber nicht mehr.

> Vorteil Variante 2: Dadurch das jedes Konto / Depot eine eigene=20
> Buchungstabelle hat, könnte die Abfrage eines Kontoauszuges (also
> die Listung aller Buchungn mit jeweiligen Beträgen und Saldoständen=
)
> vielleicht schnellen von statten gehen - oder täusche ich mich da?

Das bringt in der Praxis fast nie Vorteile. Deine Datenbank wird nur
unübersichtlicher, und die Abfragen umständlicher. Ein Index auf der =
/
den Buchungstabellen sorgt dafür, dass die Zuordnung zu den Konten
sehr schnell geht.


Übrigens: Irgendwie hat das gar nix mit PHP zu tun, oder?
--> xpost & f'up2 de.comp.datenbanken.misc


cheers,

-Uli