Ich habe eine Tabelle mit dem Namen Book
und eine Tabelle mit dem Namen Author
. Um Autoren mit Büchern zu verknüpfen, habe ich eine andere Tabelle mit dem Namen AuthorOfBook
erstellt, wobei Priority
ein ganzzahliger Wert ist, der hilft, Autoren jedes Buches in die richtige Reihenfolge zu bringen (1, 2, 3, ...).Was ist der beste Weg, Autoren von Büchern in der Datenbank zu speichern?
Ist es gute Lösung? Zuerst dachte ich, dass das Speichern von mehr Zahlen als ganze Strings helfen würde, Platz zu sparen, aber dann habe ich ein Binärfeld mit dem Titelbild des Buches hinzugefügt, so dass es jetzt keine Rolle spielt. Sollte ich AuthorOfBook
Tabelle entfernen und Fremdschlüssel BookId
zu Author
Tabelle hinzufügen? Wenn ich es tue, werden meine Abfragen einfacher aussehen und ich werde nicht so viele Tabellen brauchen, aber es wird schwieriger sein, die Autoren zu verwalten.
Und was ist mit meiner Priority
Spalte? Gibt es einen Kodierungsstandard dafür?
Die erste Lösung ist richtig. Bleib dabei. – Renzo
Sie können zweite Lösung nur in dem Fall verwenden - wo Sie sicher sind, dass das Buch nur einen Autor haben kann. Aber fügen FK des Autors zu der Buch-Tabelle hinzu – Fabio
AuthorOfBook Tabelle ist, was Ihre Design-Unterstützung für Fall hinzufügt "Ein Buch kann von mehr als einem Autor geschrieben werden". Wenn Sie es fallen lassen, werden Sie diese Viele-zu-Viele-Beziehung verlieren. – x82