Databázový model
V podstatě potřebujete many-to-many
vztah mezi autory a publikacemi, protože jeden autor může napsat mnoho publikací a jednu publikaci může napsat více než jeden autor.
To vyžaduje, abyste měli 3 stoly.
- Autor – obecné informace o každém autorovi (bez id_publikace)
- Publikace – obecné informace o každé publikaci (bez id autora)
- AuthorPublication – sloupce
author_id
apublication_id
které jsou odkazy na tabulkyAuthor
aPublication
.
Tímto způsobem nezavazujete konkrétního autora k publikaci, ale můžete jich mít více a to samé naopak.
Další poznámky
Pokud byste chtěli rozlišit roli autorů v konkrétní publikaci, můžete také přidat nějaký sloupec jako id_role
to by byl odkaz na tabulku slovníku uvádějící všechny možné role autora. Tímto způsobem byste se mohli lišit mezi předními autory, spoluautory atd. Tímto způsobem byste také mohli ukládat informace o lidech, kteří se zabývají překladem knihy, ale možná byste pak měli změnit jméno Author
na něco méně konkrétního.
Pořadí zobrazení
Správné řazení svých autorů můžete zajistit přidáním sloupce do AuthorPublication
který byste zvýšili samostatně pro každou Publication
. Tímto způsobem byste byli schopni zachovat pořadí, jak potřebujete.