Quando organizzo un Db mi piace pensare al modo di utilizzo dello stesso, nel caso in specie vedo, tranquilli non vado di matto, un tizio con un carrello
di libri, che apre un armadio, si dirige verso uno scaffale, sale su una scaletta per arrivare ad un ripiano, si fa porgere il libro dall'aiutante, lo posiziona.
Domanda : a cosa dovrebbe servire un data base?
Risposta: a ritrovare il libro nella posizione dove è stato posto.
Il ragionamento distingue 2 fasi.
1)Fornire le coordinate al titolo del libro nel momento del posizionamento del libro
2)cercare nel titolo del libro, semplifico per rendere il concetto più fruibile, per individuare la posizione esatta del libro.
Per cui io queste tabelle li organizzerei cosi:
Libri
IDLibro (PK)
Libro
IDArmadio (FK)
IDScaffale (FK)
IDFila (FK)
Armadi
IDArmadio (PK)
Armadio
IDScaffale (FK)
IDFila (FK)
Scaffali
IDScaffale (PK)
Scaffale
IDFila (FK)
Fila
IDFila (PK)
Fila
Detto questo:
I Malavoglia....IdArmadio(5)...IdScaffale(2)...IdFila(3) costituirebbero le coordinate per trovare il Libro
Inizia fai una prova...e se trovi difficoltà noi siamo quà