Hallo!
Ich fange gerade erst an mit dem relationalen Datenmodell und Datenbanken und habe da natürlich gleich ein paar Fragen:
1. Bedeutet bei der Normalisierung "Funktionale Abhängigkeit" dass es eine bijektive Abbildung zwischen den beiden Daten gibt? Also ist hier funktional im mathemarischen Sinne gemeint? D. h. es geht darum, dass ich sagen kann "Wenn ich den Wert von Attribut X kenne, dann kann ich 100%ig sicher auf den Wert von Y schließen und umgekehrt"?
2. Wie finde ich bei der 2. Normalenform die Primärschlüssel? Meistens sind das ja irgendwelche IDs oder ArtikelNr oder sowas. Aber kann ich nicht theoretisch JEDE einzigartige Kombination von Attributen als Primärschlüssel nehmen (sofern es keine noch kleinere einzigartige Kombination gibt)? Oder ist das zu kochrezept-mäßig?
3. Die Einfüge- und Löschanomalien:
Beispiel hier aus Wikipedia: http://de.wikipedia.org/wiki/Anomalie_(Informatik)#Einf.C3.BCge-Anomalie
Das ist doch eigentlich nur dann ein Problem, wenn ich die Felder, in denen die Fragezeichen stehen, nicht mit "null" belegen darf, oder? Denn wenn da null stehen dürfte, dann könnte ich die Fahrzeuge ja anlegen und später die null-Felder belegen, oder?
Das Problem bei der Löschanomalie ist ja, dass man in relationalen DB imme rnur ganze Zeilen löschen kann, oder?
4. Eine 1:1 Beziehung zwischen 2 Entitäten kann man in eine Tabelle machen, was man aber oft nicht macht, um die Daten doch noch voneinander zu trennen, ist das richtig?
5., Generell zur Normalisierung (bis zur 3. Stufe): Könnte man das Ganze auch so formulieren: Im Prinzip ist das Ziel, alle Daten, die mit nur einem einzigen Primärschlüssel identifiziert werden können, in eine eigene Tabelle auszulagern und nur noch diejenigen ein einer gemeinsamen Tabelle zu haben, für die ein einzelner Schlüssel nicht reicht?
Ich fange gerade erst an mit dem relationalen Datenmodell und Datenbanken und habe da natürlich gleich ein paar Fragen:
1. Bedeutet bei der Normalisierung "Funktionale Abhängigkeit" dass es eine bijektive Abbildung zwischen den beiden Daten gibt? Also ist hier funktional im mathemarischen Sinne gemeint? D. h. es geht darum, dass ich sagen kann "Wenn ich den Wert von Attribut X kenne, dann kann ich 100%ig sicher auf den Wert von Y schließen und umgekehrt"?
2. Wie finde ich bei der 2. Normalenform die Primärschlüssel? Meistens sind das ja irgendwelche IDs oder ArtikelNr oder sowas. Aber kann ich nicht theoretisch JEDE einzigartige Kombination von Attributen als Primärschlüssel nehmen (sofern es keine noch kleinere einzigartige Kombination gibt)? Oder ist das zu kochrezept-mäßig?
3. Die Einfüge- und Löschanomalien:
Beispiel hier aus Wikipedia: http://de.wikipedia.org/wiki/Anomalie_(Informatik)#Einf.C3.BCge-Anomalie
Das ist doch eigentlich nur dann ein Problem, wenn ich die Felder, in denen die Fragezeichen stehen, nicht mit "null" belegen darf, oder? Denn wenn da null stehen dürfte, dann könnte ich die Fahrzeuge ja anlegen und später die null-Felder belegen, oder?
Das Problem bei der Löschanomalie ist ja, dass man in relationalen DB imme rnur ganze Zeilen löschen kann, oder?
4. Eine 1:1 Beziehung zwischen 2 Entitäten kann man in eine Tabelle machen, was man aber oft nicht macht, um die Daten doch noch voneinander zu trennen, ist das richtig?
5., Generell zur Normalisierung (bis zur 3. Stufe): Könnte man das Ganze auch so formulieren: Im Prinzip ist das Ziel, alle Daten, die mit nur einem einzigen Primärschlüssel identifiziert werden können, in eine eigene Tabelle auszulagern und nur noch diejenigen ein einer gemeinsamen Tabelle zu haben, für die ein einzelner Schlüssel nicht reicht?