STUDENTE: Arianna Carucci matricola 567299 Corso di Laurea Magistrale in Economia e Management

21
Corso di ABILITA’ INFORMATICHE AVANZATE Facoltà di Economia A.A. 2010/2011 Prog. Ing. Agostino Marengo 2 ° COMPITO: PROGETTAZIONE DI UN DATABASE STUDENTE: Arianna Carucci matricola 567299 Corso di Laurea Magistrale in Economia e Management

description

Corso di ABILITA’ INFORMATICHE AVANZATE Facoltà di Economia A.A. 2010/2011 Prog . Ing. Agostino Marengo 2 ° COMPITO: PROGETTAZIONE DI UN DATABASE. STUDENTE: Arianna Carucci matricola 567299 Corso di Laurea Magistrale in Economia e Management. PARTE I. - PowerPoint PPT Presentation

Transcript of STUDENTE: Arianna Carucci matricola 567299 Corso di Laurea Magistrale in Economia e Management

Page 1: STUDENTE: Arianna Carucci    matricola 567299 Corso di Laurea Magistrale in Economia e Management

Corso di ABILITA’ INFORMATICHE AVANZATEFacoltà di Economia

A.A. 2010/2011Prog. Ing. Agostino Marengo

2 ° COMPITO:PROGETTAZIONE DI UN DATABASE

STUDENTE: Arianna Carucci matricola 567299Corso di Laurea Magistrale in Economia e Management

Page 2: STUDENTE: Arianna Carucci    matricola 567299 Corso di Laurea Magistrale in Economia e Management

PARTE I

Page 3: STUDENTE: Arianna Carucci    matricola 567299 Corso di Laurea Magistrale in Economia e Management

1) DATABASE di una BIBLIOTECA PERSONALE

Considerare le informazioni per la gestione dei prestiti di una biblioteca personale.

Il proprietario presta libri ai suoi amici, che indica semplicemente attraverso il nome o il soprannome (per evitare omonimie) e fa riferimento ai libri attraverso i titoli (non possiede libri con lo

stesso titolo). Quando presta un libro prende nota della data prevista di

restituzione. Definire uno schema di relazione per presentare queste

informazioni, individuando opportuni domini per i vari attributi e mostrarne un’istanza in forma tabellare; indicare la chiave (o le

chiavi) della relazione.Valutare le eventuali esigenze di rappresentazione dei valori nulli,

con i benefici e le difficoltà connesse.

Page 4: STUDENTE: Arianna Carucci    matricola 567299 Corso di Laurea Magistrale in Economia e Management

Analisi dei requisiti:

Si vuole progettare un database per la gestione dei prestiti in una biblioteca personale.Dall’analisi preliminare emerge quanto segue:

• Il proprietario individua gli amici a cui presta i libri attraverso nome/soprannome;

• I libri vengono individuati secondo il titolo ( non esistono in biblioteca due libri con lo stesso titolo;

• Il proprietario annota per ciascun prestito data di restituzione.

Page 5: STUDENTE: Arianna Carucci    matricola 567299 Corso di Laurea Magistrale in Economia e Management

Schema entità-relazioni:Amici

Libri

Prestiti

1 : N

N : 1

Page 6: STUDENTE: Arianna Carucci    matricola 567299 Corso di Laurea Magistrale in Economia e Management

PROGETTAZIONE CONCETTUALEInizialmente sono state individuate le seguenti entità:

• AMICI • LIBRI

Page 7: STUDENTE: Arianna Carucci    matricola 567299 Corso di Laurea Magistrale in Economia e Management

PROGETTAZIONE CONCETTUALEAMICI

Per l’entità Amici sono stati individuati i seguenti attributi:

• Nome Amico/Soprannome Amico= CHIAVE della RELAZIONE

Page 8: STUDENTE: Arianna Carucci    matricola 567299 Corso di Laurea Magistrale in Economia e Management

PROGETTAZIONE CONCETTUALELIBRI

Per l’entità LIBRI sono stati ipotizzati i seguenti attributi:

• Titolo Libro = CHIAVE della RELAZIONE

Page 9: STUDENTE: Arianna Carucci    matricola 567299 Corso di Laurea Magistrale in Economia e Management

PROGETTAZIONE LOGICADEFINIZIONE DELLE RELAZIONI

AMICI LIBRI

N : N

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

La relazione N : N è caratterizzata dal fatto che ad ogni record dell’archivio A sono associati più record dell’archivio B e viceversa.

Page 10: STUDENTE: Arianna Carucci    matricola 567299 Corso di Laurea Magistrale in Economia e Management

PROGETTAZIONE LOGICADEFINIZIONE DELLE RELAZIONI

Dalla relazione N : N deriva una ulteriore entità (PRESTITI) i cuiattributi saranno i seguenti:

• Data Prestito• Data restituzione Prestito = CHIAVE della relazione• Campo link alla tabella Amico: definisce l’amico che ha preso in

prestito• Campo link alla tabella Libro: individua il libro oggetto del

prestito

Page 11: STUDENTE: Arianna Carucci    matricola 567299 Corso di Laurea Magistrale in Economia e Management

PROGETTAZIONE LOGICADEFINIZIONE DELLE CARATTERISTICHE DEGLI ATTRIBUTI

Tabella Amici

Nome Campo

Tipo Campo Dimensione

Vincoli Note

Nome/ Soprannome Amico

Alfanumerico

40 Primary Key

Page 12: STUDENTE: Arianna Carucci    matricola 567299 Corso di Laurea Magistrale in Economia e Management

PROGETTAZIONE LOGICA: DEFINIZIONE DELLE CARATTERISTICHE DEGLI ATTRIBUTI

Nome Campo

Tipo Campo

Dimensione

Vincoli Note

Titolo Libro Alfanumerico

50 Primary key

Tabella Libri

Page 13: STUDENTE: Arianna Carucci    matricola 567299 Corso di Laurea Magistrale in Economia e Management

PROGETTAZIONE LOGICADEFINIZIONE DELLE CARATTERISTICHE DEGLI ATTRIBUTITabella Prestiti

Nome Campo

Tipo Campo

Dimensione

Vincoli Note

Data Prestito

DATA

Data restituzione Prestito

DATAPrimary key

FkAmico Prestito

Alfanumerico

40 Foreign Key

Link alla tabella Amici

FkLibro Prestito

Alfanumerico

50 Foreign Key

Link alla tabella Libri

Page 14: STUDENTE: Arianna Carucci    matricola 567299 Corso di Laurea Magistrale in Economia e Management

PARTE II

Page 15: STUDENTE: Arianna Carucci    matricola 567299 Corso di Laurea Magistrale in Economia e Management

Nome campo

Tipo campo

Dimensione Vincoli Note

Inizio Data Primary Key Not Null

Fine Data

FK Paziente Numerico 20 Foreign Key Link alla tabella Paziente

FK Reparto Numerico 30 Foreign Key Link alla tabella Reparto

BASI DI DATI OSPEDALETabella Ricoveri

Page 16: STUDENTE: Arianna Carucci    matricola 567299 Corso di Laurea Magistrale in Economia e Management

BASI DI DATI OSPEDALETabella Pazienti

Nome campo

Tipo campo

Dimensione Vincoli Note

Cod Numerico 20 Primary Key

Not Null, Unique

Cognome Alfanumerico

30

Nome Alfanumerico

30

FK Medico Numerico 20 Foreign Key

Link alla tabella Medico

Page 17: STUDENTE: Arianna Carucci    matricola 567299 Corso di Laurea Magistrale in Economia e Management

BASI DI DATI OSPEDALETabella REPARTO

Nome campo

Tipo campo

Dimensione Vincoli Note

Cod Numerico 20 Primary Key

Not Null, Unique

Nome Alfanumerico

30

Primario Alfanumerico

30 Not Null Primario

Page 18: STUDENTE: Arianna Carucci    matricola 567299 Corso di Laurea Magistrale in Economia e Management

BASI DI DATI OSPEDALETabella MEDICO

Nome campo

Tipo campo

Dimensione Vincoli Note

Matricola Numerico 20 Primary Key

Not Null, Unique

Nome Alfanumerico

30

Cognome Alfanumerico

30

Reparto Alfanumerico

30 Not Null

Page 19: STUDENTE: Arianna Carucci    matricola 567299 Corso di Laurea Magistrale in Economia e Management

CHIAVILe chiavi sono:

per la relazione PAZIENTE: Cod e Medico

per la relazione RICOVERO: Inizio, Paziente e Reparto

per la relazione MEDICO: Matr

per la relazione REPARTO: Cod

Page 20: STUDENTE: Arianna Carucci    matricola 567299 Corso di Laurea Magistrale in Economia e Management

VINCOLI DI INTEGRITÁ REFERENZIALE

Nel database esistono dei vincoli di integrità referenziale, che in questo caso

sono:

In RICOVERO: Paziente; e in PAZIENTE: Cod

Nella relazione RICOVERO il vincolo è: Reparto e nella relazione

REPARTO è: Cod

In REPARTO il vincolo é: Primario e nella relazione MEDICO è:

Matr

In MEDICO il vincolo è: Reparto e in REPARTO è: Cod

Page 21: STUDENTE: Arianna Carucci    matricola 567299 Corso di Laurea Magistrale in Economia e Management

VALORI NULLII valori nulli possono essere ammessi negli attributi:

Cognome e Nome nella relazione PAZIENTE,

Fine nella relazione RICOVERO,

Cognome e Nome nella relazione MEDICO

Nome nella relazione REPARTO.

Tutti questi attributi non sono chiavi e non hanno nessun vincolo di

integrità referenziale.