Hallo Heiner, jetzt einmal mit etwas mehr Zeit. > > Ich möchte zum einen die Firma erfassen - allgemeine Angaben > FirmenName > Bezeichnung > Straße/ POB > PLZ > Ort > FON > FAX > E-Mail > WWW > vielleicht noch Bemerkungen > > Dann personenbezogene Angaben > Abteilung/Position > NachName > VorName > Geburtsdatum > Anrede (Mann/Frau) > Durchwahl_FON > Durchwahl_FAX > E-Mail > Bemerkungen > > > Dritter Teil, die privaten Angaben > Anschrift > PLZ > Ort > FON > FAX > E-Mail > VornamePartner > NachnamePartner > GeburtsDatum > E-Mail > Kinder > Bemerkungen > > Am einfachsten wäre es sicherlich, alles in eine Calc-Datei > reinzuschmeissen und gut ist! > Das will ich aber nicht! Es soll eine Datenbank werden! > > Meine Fragen: > Wieviel Tabellen sollten es sein? > 3?
Das müssen sicher mehr Tabellen sein. Eine der Grundlagen von relationalen Datenbanken ist, möglichst selten Inhalte innerhalb derselben Tabelle zu wiederholen. Beispiel: Orte. Mindestens die Orte würde ich z.B. in eine gesonderte Tabelle auslagern. Dann wird in der Grundtabelle nachher nur die ID der Ortstabelle mitgespeichert. Ich habe das bei anderen Datenbanken noch etwas weiter getrieben und auch die Postleitzahl ausgelagert. Dann hast Du eine Tabelle für die Orte, eine für die Postleitzahlen und eine für die Person, mit der Du diese verknüpfen willst. In der Personentabelle ist die Postleitzahlen-ID mitgespeichert. In der Postleitzahlentabelle ist die Orts-ID mitgespeichert. > wie verknüpf ich die miteinander? Diese Relation legst Du im Relationenentwurf fest. Achte dabei darauf, dass sämtliche ID-Felder Integer sind; dann lassen sich die Werte automatisch hochschreiben (Autowert). Auch die entsprechenden Bezugsfelder in den zu verknüpfenden Tabellen müssen Integer sein. > In jeder Tabelle sicherlich ein Primärschlüssel? Ohne Primärschlüssel läuft, außer in dBase-Tabellen, nichts. Du kannst gar nicht erst eine Eingabe tätigen. Und diese Primärschlüssel brauchst Du ja, um die Relationen zu erstellen. > > Jetzt kommt mein Problem! > Wie stell ich den Bezug untereinander her, wie verknüpf ich die > Tabellen > miteinander? Siehe oben. > > Ein Link zu einer Beispieladressdatenbank wäre schon toll. Der Link aus der vorherigen Mail gibt zumindest eine Beispieldatenbank her, die in den Grundzügen allerdings für einen anderen Zweck gedacht ist: Simulation einer Wareneingabe, Kasse und Rechnungsstellung. Bei der Rechnungsstellung sind dann meine SchülerInnen darauf gekommen, dass doch die Adressen und Bankverbindungen auch ganz sinnvoll wären, so dass schließlich auch dieser Teil in die Datenbank eingeflossen ist. Die richtigen Relationen für Dein Projekt musst Du letztlich selbst finden. Mir ist z.B. unklar, was das Durcheinander von Firmentabelle und Personentabelle soll. Geht es um Personen, die in den Firmen beschäftigt sind? Dann müsste hier eine Relation hergestellt werden, in der bei den Personen auch die ID der Firmentabelle abgespeichert werden müsste. Tabelle 3 muss sich anscheinend direkt auf Tabelle 2 beziehen - oder haben die personenbezogenen Daten nichts miteinander zu tun? Wenn alle Datensätze von Tabelle 2 auch je einen Datensatz aus Tabelle 3 als Bezug haben, dann macht die 3. Tabelle als gesonderte Tabelle gar keinen Sinn. Was nicht geht: Felder in derselben Tabelle mit demselben Namen zu benennen. Dann wäre der Datenbank ja unklar, wo sie die eingegebenen Werte abspeichern müsste (Bei Dir: Tabelle 3 E-Mail). Schreib' einfach einmal, ob Dir die Rechnungsdatenbank eine Hilfe dazu ist, ob Du es lieber einfacher hättest ... Gruß Robert --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org For additional commands, e-mail: users-h...@de.openoffice.org