User Tag List

Ergebnis 1 bis 7 von 7

Thema: Datenbank / Normalform

  1. #1
    Erfahrenes Mitglied Avatar von xnyYy
    Registriert seit
    29.11.2010
    Ort
    Essen
    Alter
    24
    Beiträge
    547
    Renommee-Modifikator
    11

    Datenbank / Normalform

    Mahlzeit miteinander,
    Ich habe eine Frage bezüglich Datenbanken, bzw. der Normalformen.
    Diese besagen ja, dass die Attribute innerhalb einer Datenbank bzw. eines Datenfeldes eindeutig sein müssen und ein Datenfeld niemals mehr als einen Inhalt haben darf, oder?

    Nun möchte ich die Normalformen für eine Datenbank zur Übung herstellen (siehe Bild anbei - Ursprung), weiß jedoch nicht genau, wie ich es machen soll, wenn ein Buch in mehreren Bucharten vorhanden ist.

    Spoiler:
    Klicke auf die Grafik für eine größere Ansicht 

Name:	1464517610357327129639.jpg 
Hits:	7 
Größe:	225,6 KB 
ID:	6778


    Als weitere Frage würde mich interessieren, ob man die ISBN direkt auch als Primärschlüssel nutzen könnte?

    Weiß hier jemand weiter?
    Besten Dank im voraus!
    www.aLx-design.de - stay up to date

  2. #2
    Administrator Avatar von DaEngineer
    Registriert seit
    23.06.2010
    Beiträge
    1.576
    Blog-Einträge
    2
    Renommee-Modifikator
    20
    Wie man normalisiert weiß ich leider nicht mehr, hab das Thema nur für Klausuren gelernt und danach ist Gras drüber gewachsen. Die ISBN sollte als Primärschlüssel funktionieren, sie ist ja eindeutig einer einzigen Kombination von Datensätzen zuzuordnen (kann bitte einer von den Leuten, die da wirklich Plan von haben, laut STOPP schreien, wenn das nicht stimmt?).

  3. #3
    Erfahrenes Mitglied Avatar von xnyYy
    Registriert seit
    29.11.2010
    Ort
    Essen
    Alter
    24
    Beiträge
    547
    Renommee-Modifikator
    11
    Zitat Zitat von DaEngineer Beitrag anzeigen
    Wie man normalisiert weiß ich leider nicht mehr, hab das Thema nur für Klausuren gelernt und danach ist Gras drüber gewachsen. Die ISBN sollte als Primärschlüssel funktionieren, sie ist ja eindeutig einer einzigen Kombination von Datensätzen zuzuordnen (kann bitte einer von den Leuten, die da wirklich Plan von haben, laut STOPP schreien, wenn das nicht stimmt?).
    Ja genau den Gedanken bezüglich der ISBN hatte ich nämlich auch.
    Mir ist gerade noch eine weitere Frage aufgekommen...

    Wenn ich einen kompletten Datensatz einer ID(z. B. 5) lösche, rutscht dann der Datensatz der ID6 hoch und nimmt die Position ein? Oder bleibt ID 5 bestehen und ist entsprechend leer?
    Wenn es nachrutscht wäre es doch eher problematisch, zB bei einem Kundenstamm mit einer Kundennummer, diese ändern sich ja normalerweise nicht, wenn ein Kunde gelöscht wird, oder habe ich hier einen Denkfehler?
    www.aLx-design.de - stay up to date

  4. #4
    Administrator Avatar von DaEngineer
    Registriert seit
    23.06.2010
    Beiträge
    1.576
    Blog-Einträge
    2
    Renommee-Modifikator
    20
    Nein, an den anderen Datensätzen ändert sich nichts. Sonst würden alle anderen Tabellen riesige Probleme bekommen, wenn sie auf die umsortierte Tabelle referenzieren und plötzlich alles wo anders steht. Und das mit der ISBN als Primärschlüssel ist wohl auch nicht so sinnvoll, weil das System dann nicht erweiterbar ist. Du könntest von jedem Buch immer nur ein Examplar besitzen, weil du sonst nicht eindeutig sagen kannst, um welches Exemplar es sich handelt, weil sie die gleiche ISBN haben. Also nimm als Primärschlüssel lieber eine generische ID.

    Lies das bitte alles immer unter Vorbehalt und denk dran, dass es gefährliches Halbwissen sein könnte ^^

  5. #5
    Erfahrenes Mitglied Avatar von xnyYy
    Registriert seit
    29.11.2010
    Ort
    Essen
    Alter
    24
    Beiträge
    547
    Renommee-Modifikator
    11
    Hmmmm, das hatte ich nicht bedacht, klingt aber logisch.
    Ich denke ich werde die Tabelle dann wirklich um ein weiteres Feld "ID" erweitern müssen.
    Ich Knobele mal weiter, vielleicht komme ich gleich noch auf ein Ergebnis.

    Edit: Die erste Normalform habe ich nun gebildet. Ich zerbreche mir nur immernoch den Kopf bezüglich der 3. Normalform.
    Ich weiß nicht, wie ich die Doppelung bei der Buchart umgehen kann.

    Spoiler:

    Hier die erste Normalform anhand von 5 Datensätzen :

    Klicke auf die Grafik für eine größere Ansicht 

Name:	14645220214471138122048.jpg 
Hits:	16 
Größe:	230,6 KB 
ID:	6779




    Editedit :
    Ich glaube ich habe nun eine Lösung gefunden.
    Ich habe es nun in insgesamt 4 Tabellen aufgeteilt, wovon eine zur Bündelung der Informationen dient.

    Spoiler:



    Klicke auf die Grafik für eine größere Ansicht 

Name:	1464531281592-675834098.jpg 
Hits:	9 
Größe:	236,3 KB 
ID:	6781


    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken Klicke auf die Grafik für eine größere Ansicht 

Name:	14645234348571407474863.jpg 
Hits:	6 
Größe:	226,7 KB 
ID:	6780  
    Geändert von xnyYy (29.05.2016 um 16:16:19 Uhr)
    www.aLx-design.de - stay up to date

  6. #6
    Mapping-Profi Avatar von eMo
    Registriert seit
    10.12.2010
    Beiträge
    2.024
    Renommee-Modifikator
    21
    Welche Normalform willst du denn? -> https://de.wikipedia.org/wiki/Normal...ng_(Datenbank)

    Für die erste Normalform würde ich neben dem Titel eine Tabelle mit Erscheinungsjahr und Erscheinungsform (ebook | hardcover | etc.) erstellen und das ganze um eine ID erweitern.

    Deine 4-Tabellenlösung ist womöglich etwas umständlich, aber korrekt, denke ich.
    Ein kreativer Geist findet immer eine Möglichkeit, sich auszuleben.

  7. #7
    Erfahrenes Mitglied Avatar von xnyYy
    Registriert seit
    29.11.2010
    Ort
    Essen
    Alter
    24
    Beiträge
    547
    Renommee-Modifikator
    11
    Alles klar. Ich brauchte die 1.und 3. Normalform, ich denke die habe ich nun, auch wenn, wie du bereits gesagt hast, meine Lösung etwas umständlich ist.
    www.aLx-design.de - stay up to date

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  
[email protected]