Tratto da: A. Lorenzi, E. Cavalli – Basi di dati e linguaggio SQL – ATLAS
Un oggetto può essere costituito da uno più oggetti (parti).
Schema E/R
Osserva le due possibili soluzioni
- un oggetto (parte) può appartenere a un altro oggetto (con un certo numero di pezzi)
- un oggetto (parte) può appartenere a uno o più oggetti (con un certo numero di pezzi).
Schema relazionale 1
- OGGETTO(IdOggetto, Nome, Quantità, ComponenteDi)
ComponenteDi è chiave esterna collegata a IdOggetto
Schema relazionale 2
- OGGETTO(IdOggetto, Nome, …)
- PARTI(OggettoId1, OggettoId2, Quantità)
- OGGETTO_2(IdOggetto, Nome, …)
OggettoId1 è chiave esterna collegata a OGGETTO
OggettoId2 è chiave esterna collegata a OGGETTO_2
La relazione OGGETTO_2 è necessaria per esprimere l’associazione ricorsiva
Query
- La tabella degli oggetti
- Gli oggetti ordinati
- Gli oggetti che non sono parti di altri oggetti
- Le associazioni tra oggetti