Hallo zusammen,
ich möchte quasi eine Kontakt-Datenbank erstellen.
Es gibt mehrere Personen die jeweils in mehreren Firmen arbeiten.
Bsp:
Herr Muster ist Vorstandsvorsitzender bei BMW.
Herr Muster ist aber auch im Prüfungsausschuss von Mercedes usw.
.
.
.
(bis zu 4-5 weitere Tätigkeiten)
Herr Muster hat Geburtstag am 1. Mai 2014.
Wie bereite ich dies in einer Datenbank auf so das ich alles ersuchen kann und das alles zusammen gebunden wird?
Sollte ich zwei Tabellen anlegen? Personen + Firmen?
Bei einer Tabelle müsste ich ja dann z.b. "Unternehmen1", und "Unternehmen2" vergeben?
Ist das geschickt? Oder lieber zwei Tabellen die verlinkt sind?
Ich habe da irgendwie grade einen Knoten im Kopf.
Habe meine Frage jetzt nochmal anders geschrieben, da es glaube ich, nicht ersichtlich war was ich meine.
Ich denke das ganze ist kein großes Problem aber irgendwie komme ich nicht weiter.
Würde mich sehr freuen wenn mir jemand helfen könnte.
LG
Sven
Verständnis Problem... Kunde -> mehrere Firmen
Moderator: Moderatoren
Re: Verständnis Problem... Kunde -> mehrere Firmen
Hallo Sven, der wichtigste Punkt ist die saubere Struktur der Tabellen; alles Weitere folgt mehr oder weniger automatisch. Siehe Normalisierung. Du brauchst zunächst folgende Tabellen (in allen Fällen mit ID als Autowert):
Diese Hinweise lösen hoffentlich den Knoten. Wenn etwas nicht klar ist, frag einfach nach. Die Struktur der Eingabeformulare sollte die Verknüpfungen nachbilden. Jürgen
- Person: Namensteile, Titel, Geburtstag; allenfalls noch Verknüpfung zur Privatanschrift
- Firma: Name, Rechtsform, allenfalls noch Verknüpfung zur Anschrift der Zentrale
- Anschrift: Straße, Lkz, PLZ, Ort (am besten auch Unterscheidung nach Großempfänger, Postfach, Straße)
- Kontaktdaten: Telefon, Telefax, Mobil, Email
- ID als Autowert (das ist nicht unbedingt erforderlich, aber sinnvoll; dann bist du flexibel bei der Anzahl der Einträge)
- PersonID als Verknüpfung zur Tabelle Person
- FirmaID als Verknüpfung zur Tabelle Firma
- AnschriftID als Verknüpfung zur Tabelle Anschrift
- DatenID als Verknüpfung zur Tabelle Kontaktdaten
- Art der Funktion (ob im Klartext oder als Verknüpfung zu einer weiteren Tabelle, hängt von der Gesamtstruktur der Daten ab)
Diese Hinweise lösen hoffentlich den Knoten. Wenn etwas nicht klar ist, frag einfach nach. Die Struktur der Eingabeformulare sollte die Verknüpfungen nachbilden. Jürgen
Situation: LibO 3.6 auf Win 7 Home Premium (64-bit) mit MySQL (localhost) über JDBC
Re: Verständnis Problem... Kunde -> mehrere Firmen
Hallo SvenK,
Für unterschiedliche Firmen wäre eine Personentabelle und eine Firmentabelle sowie eine Tabelle notwendig, die zwischen Personen und Firmen vermittelt.
Person : ID, Vorname, Nachname, Geburtsdatum
Firmen: ID, Firma, Position (kann auch ausgelagert werden ...)
rel_Person_Firmen: Person_ID, Firma_ID (beide Fremdschlüssel können zusammen Primärschlüssel dieser Tabelle sein, da keine Person den gleichen Posten doppelt belegt.
Vielleicht ein kurzer Blick ins Handbuch zur n:m-Beziehung ...
Gruß
Robert
Das sieht erst einmal nach einer Beziehung zwischen Personen und Firmen im n:m-Format aus. Jürgen hat so etwas für verschiedene Funktionen in der gleichen Firma beschrieben.SvenK hat geschrieben: Es gibt mehrere Personen die jeweils in mehreren Firmen arbeiten.
Bsp:
Herr Muster ist Vorstandsvorsitzender bei BMW.
Herr Muster ist aber auch im Prüfungsausschuss von Mercedes usw..
.
(bis zu 4-5 weitere Tätigkeiten)
Herr Muster hat Geburtstag am 1. Mai 2014.
Für unterschiedliche Firmen wäre eine Personentabelle und eine Firmentabelle sowie eine Tabelle notwendig, die zwischen Personen und Firmen vermittelt.
Person : ID, Vorname, Nachname, Geburtsdatum
Firmen: ID, Firma, Position (kann auch ausgelagert werden ...)
rel_Person_Firmen: Person_ID, Firma_ID (beide Fremdschlüssel können zusammen Primärschlüssel dieser Tabelle sein, da keine Person den gleichen Posten doppelt belegt.
Vielleicht ein kurzer Blick ins Handbuch zur n:m-Beziehung ...
Gruß
Robert
Re: Verständnis Problem... Kunde -> mehrere Firmen
Kleine Korrektur:
Ich habe es auch für gleiche Personen in verschiedenen Firmen gemeint. Die Tabelle Funktion ist auch für die Verknüpfung zwischen Personen und Firmen geeignet. Die verschiedenen Positionen sehe ich nicht als Teil der Firma an, sondern als zusätzliche Information der Verknüpfungen an. (Aber das kann natürlich auch anders geregelt werden - abhängig von den Aufgaben der Datenbank.) JürgenRobertG hat geschrieben:Das sieht erst einmal nach einer Beziehung zwischen Personen und Firmen im n:m-Format aus. Jürgen hat so etwas für verschiedene Funktionen in der gleichen Firma beschrieben.
Situation: LibO 3.6 auf Win 7 Home Premium (64-bit) mit MySQL (localhost) über JDBC