Hallo,
ich habe in meiner Datenbank 2 Tabellen.
#1 Kunden
#2 Lieferanten
Beide dieser Tabellen beinhalten Kontaktdaten.
z.B. Straße, Hausnummer, PLZ, Ort, Telefon, FAX
Somit hätte ich jetzt 2 Tabellen, die teilweise gleich aufgebaut sind.
z.B.
#1 Kunden
- id + Kundennummer + Straße + Hausnummer + PLZ + Ort + Telefon + FAX +
#2 Lieferanten
- id + Lieferantennummer + Straße + Hausnummer + PLZ + Ort + Telefon + FAX +
Ich möchte jetzt die Kontaktdaten in eine separate Tabelle auslagern.
(Bietet sich an, aber ist es auch gescheit?)
Jetzt habe ich
#1 Kunden
- id + Kundennummer
#2 Lieferanten
- id + Lieferantennummer
#3 Kontaktdaten
- id + Straße + Hausnummer + PLZ + Ort + Telefon + FAX + fk-Kunden + fk-Lieferanten
Per Constraint auf der Tabelle Kontaktdaten versuche ich jetzt dafür zu sorgen, dass fk-Kunden oder (XOR) fk-Lieferanten nicht NULL ist.
Mir erscheinen die beiden Foreign-Keys auf der Tabelle Kontaktdaten sehr umständlich. Vor allem, wenn man aus weiteren Tabellen (z.B. Mitarbeiter, ...) diese Tabelle benutzen möchte.
Gibt es dafür bessere/schönere/andere Lösungen?
Grüße
- Steffen