gipe Geschrieben 16. Oktober 2002 Teilen Geschrieben 16. Oktober 2002 Hallo ich habe eine grundsätzliche Frage. Zuerst Mal die Ausgangslage: Ich habe eine Adresstabelle worin ich sämtliche Kontakte einer Firma speichern möchte, also z.B. Kunden, Lieferanten und Interessenten. Jeder Adresse wird eine fortlaufende Nummer vergeben. Ich möchte aber die Adressen nach Adress-Typ charakterisieren also ein Feld erstellen "AdressTyp" mit den Optionen "Kunde", "Lieferant", "Interessent". Hier jetzt nun eben meine Frage: - wann soll einfach ein Auswahlfeld mit den obengenannten Einträgen erstellt werden und - wann soll aber eine neue Tabelle erstellt werden mit den obengenannten Einträge als Datensätze? Es geht mir hier eigentlich um das theoretische daran ... was mir einfach noch nicht ganz klar ist, ist wie man die verschiedenen Abhängigkeiten (auf die sich ja der Normalisierungsprozess bezieht) richtig erkennen kann ... Vielen Dank für Eure Hilfe. Grüsse gipe:confused: Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Saga Geschrieben 17. Oktober 2002 Teilen Geschrieben 17. Oktober 2002 Original geschrieben von gipe - wann soll einfach ein Auswahlfeld mit den obengenannten Einträgen erstellt werden und - wann soll aber eine neue Tabelle erstellt werden mit den obengenannten Einträge als Datensätze? Es geht mir hier eigentlich um das theoretische daran ... was mir einfach noch nicht ganz klar ist, ist wie man die verschiedenen Abhängigkeiten (auf die sich ja der Normalisierungsprozess bezieht) richtig erkennen kann ... Mal sehen, ob ich das halb verschlafen und am frühe Morgen richtig verstanden habe... Fuer die Adresstypen würde ich eine eigene Tabelle (3. NF) erstellen, in der Du eine Nummer (fortlaufend) vergibst und die Typen (Kunde etc.) hinterlegst. In Deiner Adresstabelle referenzierst Du auf Deine Adresstypen nur ueber die laufende Nummer der Tabelle Adresstypen. In der Anwendung kannst Du dann eine Combo-Box machen, die Dir die Bezeichnungen der Adresstypen anzeigt. Wenn Du dann einen neuen Datensatz anlegst schreibst Du in Deine Adressentabelle aber nur die laufende Nummer des Adresstyps. War das ungefaehr das, was Du wissen wolltest? :confused: Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Jaraz Geschrieben 17. Oktober 2002 Teilen Geschrieben 17. Oktober 2002 Hallo, MUMPITZ editiert: solange Adress-Typ eine 1:1 Beziehung ist und nur aus wenigen Werten besteht, würde ich daraus keine Tabelle machen, sondern die Auswahlbox über eine Property-Liste füllen. Man kann sich seine Abfragen nämlich sonst mächtig kompliziert machen. Gruß Jaraz Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
gipe Geschrieben 17. Oktober 2002 Autor Teilen Geschrieben 17. Oktober 2002 Danke für eure Antworten. Es ist keine 1:1-Beziehung da die einzelnen Adresstypen mehreren Adressen zugewiesen werden können. Zur Antwort von Saga: ich weiss wie ich es machen muss, aber ich weiss nicht wieso ... d.h. ich weiss wie ich die verschiedenen Beziehungen in ein Relationenmodell abbilden kann. Du schlägst mir vor, die Adresstypen in eine separate Tabelle auszulagern. OK. Aber wieso?? Wieso denn nicht ein Auswahlfeld? Ich weiss, theoretisch, wann man eine neue Tabelle erstellen sollte. Die Theorie der Abhängigkeiten ist mir klar (glaub'ich zumindest). Nur wie erkennt man "sofort" ob es sich um funktionale oder ob es sicht um transitive Abhängigkeiten handelt. Gewisse Beispiele sind ja ziemlich einleuchtend: transitive Abhängigkeit: wir haben z.B. die Felder PLZ und Ort in einer Adresstabelle. Das Attribut Ort ist nicht vom Primärschlüssel der Adresstabelle (z.B. Adressnummer) abhängig sondern vom Attribut PLZ --> also muss eine neue Tabelle "PLZ" erstellt werden. Dieses Beispiel ist ziemlich klar und einfach zu verstehen, andere Fälle kann ich nicht so einfach "sehen" . Gibt es vielleicht irgendeine "Formel"/Anleitung wie man solche Abhängigkeiten prüfen kann ... ich weiss, das ist sehr viel Theorie... sorry Gruss gipe Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Jaraz Geschrieben 17. Oktober 2002 Teilen Geschrieben 17. Oktober 2002 Original geschrieben von gipe Es ist keine 1:1-Beziehung da die einzelnen Adresstypen mehreren Adressen zugewiesen werden können. OK, da hast du recht. Ich meinte damit auch nur, dass einer Adresse genau ein Adresstyp zugeordnet wird. Das als 1:1 zu bezeichnen war natürlich quatsch. Aber da die Anzahl der Adresstypen überschaubar ist, würde ich dafür nicht eine neue Tabelle machen, sondern halt ein enum, falls die Datenbank das unterstützt. Man kann jedes Datenmodel bis in die letzte Ecke normalisieren. Ich schätze aber immer ab, ob es sich "lohnt" für bestimmte Sachen extra Tabellen anzulegen. Dadurch verbrauche ich vielleicht etwas mehr Speicher, habe aber keine Statements die über eine DIN A4 Seite gehen. Gruß Jaraz Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.