Entità

8
Progettare una base di dati che permetta di gestire il problema descritto nel seguito, nei seguenti punti: 1. Definire uno schema Entità/Relazione che descriva il problema 2. Definire uno schema logico secondo il modello relazionale, derivato da una ristrutturazione, se necessaria, del diagramma E/R, esteso con gli eventuali vincoli necessari a garantire la consistenza della base di dati. Un negozio di elettrodomestici vende diversi prodotti, ciascuno dei quali ha alcune caratteristiche descrittive in comune con gli altri (prezzo di acquisto, marca, dimensioni, prezzo di vendita, data di vendita) ma, in funzione del tipo, ha anche caratteristiche specifiche. La base di dati deve quindi consentire di gestire diverse categorie di prodotti e, quindi, di associare loro le rispettive caratteristiche. Il negozio ha un solo fornitore per ogni componente (ma può comprare più componenti dallo stesso fornitore). Inoltre ha un’anagrafe clienti che permette di stabilire, a fine anno, l’importo di un buono acquisto da offrire in omaggio a ciascuno di essi, di valore pari al 2% del valore degli acquisti che quest’ultimo ha fatto durante l’anno.

description

- PowerPoint PPT Presentation

Transcript of Entità

Page 1: Entità

Progettare una base di dati che permetta di gestire il problema descritto nel seguito, nei seguenti punti:

1. Definire uno schema Entità/Relazione che descriva il problema2. Definire uno schema logico secondo il modello relazionale, derivato da una ristrutturazione, se necessaria, del diagramma E/R, esteso con gli eventuali vincoli necessari a garantire la consistenza della base di dati.

Un negozio di elettrodomestici vende diversi prodotti, ciascuno dei quali ha alcune caratteristiche descrittive in comune con gli altri (prezzo di acquisto, marca, dimensioni, prezzo di vendita, data di vendita) ma, in funzione del tipo, ha anche caratteristiche specifiche.

La base di dati deve quindi consentire di gestire diverse categorie di prodotti e, quindi, di associare loro le rispettive caratteristiche.

Il negozio ha un solo fornitore per ogni componente (ma può comprare più componenti dallo stesso fornitore).

Inoltre ha un’anagrafe clienti che permette di stabilire, a fine anno, l’importo di un buono acquisto da offrire in omaggio a ciascuno di essi, di valore pari al 2% del valore degli acquisti che quest’ultimo ha fatto durante l’anno.

Page 2: Entità

Un negozio di elettrodomestici vende diversi prodotti, ciascuno dei quali ha alcune caratteristiche descrittive in comune con gli altri (prezzo di acquisto, marca, dimensioni, prezzo di vendita, data di vendita) ma ha anche caratteristiche specifiche.

La base di dati deve quindi consentire di gestire diverse categorie di prodotti e, quindi, di associare loro le rispettive caratteristiche.

Il negozio ha un solo fornitore per ogni prodotto (ma può comprare più prodotti dallo stesso fornitore).

Inoltre ha un’anagrafe clienti che permette di stabilire, a fine anno, l’importo di un buono acquisto da offrire in omaggio a ciascuno di essi, di valore pari al 2% del valore degli acquisti che quest’ultimo ha fatto durante l’anno.

Page 3: Entità

Entità

Cliente

Fornitore

Relazioni

Vendita

Fornitura

Prodotto

Marca Modello

L H P

Dim.

Prezzo listino

Dati anag.

Dati anag.

Prezzo vendita

Prezzo acquisto

Buono Acquisto Valore

(1,N)

(1,N)

(1,N)

(1,N)

Page 4: Entità

Schema scheletro

Cliente Prodotto

Fornitore

Vendita

Acquisto

(1,N) (1,N)

(1,N)

(1,N)

Dati anag.

Dati anag.

Prezzo vendita Prezzo acquistoData

Marca Modello

L H P

Dim.

Buono Acquisto Valore

Premio annuale

Anno

(1,1)

(1,N)

Data

N.B. La relazione Acquisto è di tipo molti a molti in quanto un prodotto può essere acquistato piu volte in date diverse. Esiste anche una relazione 1:N tra Prodotto e Fornitore, logicamente distinta dall’acquisto, che potrebbe ad es. chiamarsi “Fornitura”

Quantità

Quantità

Page 5: Entità

Generalizzazioni

Prodotto

Prodotto1 Prodotto2 ProdottoN…..

Marca Modello

L H P

C11 C12 C1n C21 C22 C2n CN1 CN2 CNn

Dim.

Prezzo listino

Page 6: Entità

Eliminazione generalizzazioni e attributi multivalore

Prodotto

Marca Modello L H P

Prezzo listino

Caratteristica

Nome

Specifica

(1,N)

(1,N)

Cliente

Fornitore

C.F. Nome ………..

P.I. Nome ………..

Codice

Valore

Page 7: Entità

Cliente

C.F. Nome ………..

Fornitore

P.I. Nome ………..

Prodotto

Marca Modello L H P

Prezzo listino

Caratteristica

Nome

Specifica

(1,N)

(1,N)

Codice

Vendita

Acquisto

Prezzo vendita

Prezzo acquisto

(1,N)

(1,N)

(1,N)

(1,N)

Buono AcquistoValore

Premio annuale

(1,N)

(1,1)

Anno

Valore

Data

Data

Quantità

Quantità

Page 8: Entità

Schema logico

Cliente(CF, Nome, Cognome, Indirizzo, ….)

Fornitore(PI, Nome, Cognome, Indirizzo, ….)

Prodotto(Codice, Marca, Modello, L, H, P, Prezzolistino, PI)

Specifica(NomeCaratteristica, CodiceProd, Valore)

Vendita(CodiceProd, CF, Prezzovendita, Quantità, Data)

Acquisto(CodiceProd, PI, Prezzoacquisto, Quantità, Data)

BuonoAcquisto(Valore, Anno, CF)

Caratteristica(Nome)

N.B. La tabella caratteristica è utile solo se si vuole imporre un vincolo di integrità referenziale fra Specifica.Nomecaratteristica e Caratteristica.Nome