progettazione di un data base daraio andrea. si vuole progettare un database per la gestione di una...

Post on 02-May-2015

217 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Progettazione di un Data Base

Daraio Andrea

Abilità Informatiche Avanzate Laurea Magistrale in Economia e

Management

1. DATABASE: Biblioteca personale

Analisi dei requisiti

Si vuole progettare un database per la gestione di una biblioteca personale, dove il proprietario:Presta i libri ai suoi amici, annotati con nomi e soprannomi (per evitare omonimie);Si riferisce ai libri mediante i titoli (assenza di libri con titoli identici);Annota il prestito con la prevista data di restituzione

Nel nostro caso il dominio applicativo è rappresentato da tutte le entità presenti nel sistema biblioteca, in particolare quelle relative alla gestione dei prestiti.

Dominio Applicativo

Schema Entità - Relazioni

Biblioteca

Prestito

1 : N

Libri

Amici

1 :

N

N :

1

N

N

PROGETTAZIONE CONCETTUALE

Nel nostro caso sono state individuate le seguenti entità:

BIBLIOTECA

LIBRI

AMICI

BIBLIOTECA

Per l’Entità Biblioteca abbiamo individuato gli attributi:Biblioteca: nomeProprietario: nome e cognome Indirizzo bibliotecaTelefono proprietarioE-mail proprietario

PROGETTAZIONE CONCETTUALE

LIBRIPer l’Entità Libri abbiamo individuato gli attributi:TitoloCodice ISBN: codice identificativo di ogni libroAutoreGenere

PROGETTAZIONE CONCETTUALE

AMICI

Per l’Entità Amici abbiamo individuato gli attributi:Nome e Cognome AmicoSoprannome AmicoTelefono AmicoE-mail Amico

PROGETTAZIONE CONCETTUALE

PROGETTAZIONE LOGICADefinizione delle relazioni

Biblioteca

1 : N

Libri

• Esiste una sola biblioteca• La biblioteca può fornire più libri

PROGETTAZIONE LOGICADefinizione delle relazioni

Amici

N : N

Libri

• Un amico può prendere in prestito più libri• Un libro può essere prestato a più amici

PROGETTAZIONE LOGICADefinizione delle relazioni

Amici

N : 1

Libri

1 : N

N : N

Prestito

PROGETTAZIONE LOGICADefinizione delle relazioni

•Dalla relazione N : N abbiamo un’altra entità, Prestito, la quale presenta i seguenti attributi:

• Id Prestito• Campo link alla tabella Libri: definisce il libro prestato• Campo link alla tabella Amici: definisce a chi è stato

prestato il libro• Data restituzione

PROGETTAZIONE LOGICADefinizione delle caratteristiche degli

attributiLibri

Nome campo Tipo campo Dimensione Vincoli Note

Titolo Testo 40 Primary Key

Codice ISBN Numerico Intero lungo Not null

Autore Testo 40

Genere Testo 40

FkBiblioteca Numerico Foreign Key Link alla tabella Biblioteca

PROGETTAZIONE LOGICADefinizione delle caratteristiche degli

attributi

Biblioteca

Nome campo Tipo campo Dimensione Vincoli Note

Biblioteca Testo 30 Primary Key

Proprietario Testo 40 Not null

Indirizzo Biblioteca

Testo 40 Not null

Telefono Proprietario

Testo 15 Not null

Email Proprietario

Testo 50

PROGETTAZIONE LOGICADefinizione delle caratteristiche degli

attributiAmici

Nome campo Tipo campo Dimensione Vincoli Note

Cognome Amico

Testo 30 Not null

Nome Amico Testo 30 Not null

Soprannome Amico

Testo 40 Primary Key

Telefono Amico

Testo 15 Not null

Email Amico Testo 50

PROGETTAZIONE LOGICADefinizione delle caratteristiche degli attributi

Prestito

Nome campo Tipo campo Dimensione Vincoli Note

Id Prestito Numerico Intero lungo Primary Key

FkLibriPrestito

Numerico Intero lungo Foreign Key Link alla tabella Libri

FkAmiciPrestito

Numerico Intero lungo Foreign Key Link alla tabella Amici

Data restituzione

Data Not null

2. Base di dati “Ospedale”

INDIVIDUAZIONE CHIAVI

PAZIENTI

Key: COD

REPARTI

Key: Matricola

RICOVERI

Key: Codice Nome Codice Nome

MEDICI

Key: Paziente Inizio Fine Paziente Inizio Paziente Fine

VINCOLI DI INTEGRITA’ REFERENZIALE

Possiamo individuare vincoli di integrità referenziale tra:

• l’attributo COD della relazione PAZIENTI e la relazione RICOVERI

• l’attributo REPARTO della relazione RICOVERI e le relazioni REPARTI e MEDICI

• gli attributi COD e PRIMARIO della relazione REPARTI e la relazione MEDICI

VALORI NULLI

Può essere sensato ammettere valori nulli sugli attributi:

• COGNOME e NOME nell’istanza PAZIENTI

• REPARTO nell’istanza RICOVERI

• NOME e COGNOME nell’istanza MEDICI

top related