unterschiedliche Datentabellen

Sascha Laurent

Aktives Mitglied
Hallo Leute,

ich habe ein Datenbank-Designerisches Problem. Ich habe eine Tabelle für Personen


Vorname
Nachname
Alter

und damit Verbunden unterschiedliche Address-Typen die ich über loser Kopplung als XML - Dokument erhalte. Die Address-Typen können sein

Adresszeile 1
Adresszeile 2
Adresszeile 3
Adresszeile n

oder alternativ mit max. 3 Adresszeilen

Adresszeile 1
Adresszeile 2
Adresszeile 3

oder alternativ mit vorgebenen Tags

Strasse
Hausnummer
Flur
Gebäude
Stadt
Bezirk
Staat
Land

jetzt suche ich eine Design für eine Tabelle um alle drei Adressentypen mit der Person am besten zu speichen ist. Wie würdet Ihr soetwas realisieren?

Danke
Sascha
 
G

Gast2

Gast
Ich würde immer nur eine Tabelle mit dem Adressdatensatz (Quasi die Tags als Spalten + PK) halten und die einkommenden Daten per Handler darauf abbilden, sprich die Adresszeilen parsen und in die richtigen Felder schreiben.

Wenn du dann aus der Adresstabelle wieder eine mehrzeile Adresse machen willst, zB. um sie auf ein Brief zu drucken dann halt noch einen Handler der anhand von Formatoptions den Addressrecord wieder transformiert.

Du brauchst dann noch einen FK in der Personstabelle auf den PK des passenden Adressdatensatzes.
 
Zuletzt bearbeitet von einem Moderator:

KYLT

Mitglied
Für den Fall, dass Adresszeilensatzinhalt und Tags übereinstimmt stimme ich fassy voll und ganz zu. Das ist gängige Praxis.


Falls jedoch die Adresszeilen bzw. Tags abweichen würde ich allerdings mit 2 Tabellen arbeiten.

Also eine Tabelle Adresse , mit FK Person , PK Adresse und gegebenenfalls allgemeine Spalten, sowie eine Tabelle mit FK Adresse, Tagname, Taginhalt
 
G

Gast2

Gast
Die Adresszeile sollte schon übereinstimmen.

Das wäre ja sowas

1) zH. Herrn
2) Max Mustermann
3) Musterstr. 2
4) 12345 Musterstadt
5) Musterland

Und evlt noch mehr. Aber wohl nicht andere Attribute als man in den beiden Masterdata Tabellen Person + Adresse ablegen würde
 

Sascha Laurent

Aktives Mitglied
Das hatte ich mir auch überlegt, also 1 Tabelle mit Personen und 1 Tabelle mit n Adresszeilen. Und wenn später dieses als XML-Dokument z.B. für Übertragung erstellt werden soll, dann Verschicken, grundsätzlich als Person + n Adresszeilen. Was ist aber, wenn es später wirklich auf die Korrekte Zuordnung z.B. Strasse geht? Dann habe ich bei Adresszeilen, da ich nicht weiß in welcher Adresszeile die Strasse steht ein Problem.

Seht Ihr daß genau so oder weiß jemand eine elegante Lösung?
 
G

Gast2

Gast
Dann habe ich bei Adresszeilen, da ich nicht weiß in welcher Adresszeile die Strasse steht ein

Das ist immer ein Problem bei unstrukturierten Daten. Wenn du kein sauber definiertes Interface zu deinem System hast muss man immer irgendwelche Kompromisse eingehen.

Hast du überhaupt keinen Einfluss wie die Daten ankommen?
 

Oben