1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema...

83
1 SSIS SSIS Basi di Dati Basi di Dati La Progettazione La Progettazione

Transcript of 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema...

Page 1: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

1SSISSSIS

Basi di DatiBasi di DatiLa ProgettazioneLa Progettazione

Page 2: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

2

SSISSSIS

Piano della lezionePiano della lezione

Problema dell’archivio dei pazientiProblema dell’archivio dei pazienti Realizzazione di una soluzione pre-Realizzazione di una soluzione pre-

informatica: archivio cartaceoinformatica: archivio cartaceo– Importanza della buona progettazione Importanza della buona progettazione – Limiti della soluzione cartaceaLimiti della soluzione cartacea

Realizzazione di una soluzione Realizzazione di una soluzione informatica: archivio elettronicoinformatica: archivio elettronico– Progetto di un databaseProgetto di un database– Confronto con la soluzione cartaceaConfronto con la soluzione cartacea

Page 3: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

3

SSISSSIS

ProblemaProblema Gestione delle informazioni relative ad Gestione delle informazioni relative ad

un’un’OrganizzazioneOrganizzazione Inserimento, modifica, cancellazione ed Inserimento, modifica, cancellazione ed

elaborazione delle informazionielaborazione delle informazioni

Organizzazioneinput

esterni

richiestadi servizi e

risposta

processi interni di aggiornamento e analisi

Page 4: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

4

SSISSSIS

Soluzione: archiviSoluzione: archivi Trovare il modo di Trovare il modo di conservareconservare e e organizzareorganizzare

le informazioni interessanti di una realtà per le informazioni interessanti di una realtà per poterle poterle recuperarerecuperare ed ed elaborareelaborare

Anni ’70: archivi cartaceiAnni ’70: archivi cartacei Oggi: archivi elettronici, databaseOggi: archivi elettronici, database Gli archivi sono un modello della parte della Gli archivi sono un modello della parte della

realtà che si ritiene interessanterealtà che si ritiene interessante

Page 5: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

5

SSISSSIS

Il problemaIl problema

Migliorare il servizio ambulatoriale Migliorare il servizio ambulatoriale conservando e organizzando in maniera conservando e organizzando in maniera sistematica le informazioni sui pazientisistematica le informazioni sui pazienti

Dati anagraficiDati anagrafici– Preparazione rapida di ricettePreparazione rapida di ricette– Accesso alle informazioni anche in assenza del Accesso alle informazioni anche in assenza del

paziente: quanto pesa il paziente paziente: quanto pesa il paziente Mario RossiMario Rossi?? Dati medici e appunti sulle visite passateDati medici e appunti sulle visite passate

– Visite e diagnosi più accurateVisite e diagnosi più accurate– Calcolo di statistiche: quale è il peso medio dei Calcolo di statistiche: quale è il peso medio dei

pazienti?pazienti?

Page 6: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

6

SSISSSIS

Tipologia di problemaTipologia di problema

Gestione delle informazioni relative ad Gestione delle informazioni relative ad un’organizzazioneun’organizzazione– Conservare e organizzare informazioni in modo da Conservare e organizzare informazioni in modo da

poterle recuperare, modificare e consultare in poterle recuperare, modificare e consultare in maniera efficientemaniera efficiente

Caratteristiche tipiche del problemaCaratteristiche tipiche del problema– Gestione di quantità ingenti di informazioni dalla Gestione di quantità ingenti di informazioni dalla

struttura omogenea (ad esempio, di struttura omogenea (ad esempio, di tuttitutti i pazienti i pazienti ci interessa sapere ci interessa sapere nomenome, , etàetà, , indirizzoindirizzo, , patologiepatologie, , ecc.)ecc.)

– Operazioni di ricerca di informazioni, Operazioni di ricerca di informazioni, possibilmente combinate al calcolo di statistichepossibilmente combinate al calcolo di statistiche

Page 7: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

7

SSISSSIS

Piano della lezionePiano della lezione

Problema dell’archivio dei pazientiProblema dell’archivio dei pazienti Realizzazione di una soluzione pre-Realizzazione di una soluzione pre-

informatica: archivio cartaceoinformatica: archivio cartaceo– Importanza della buona progettazione Importanza della buona progettazione – Limiti della soluzione cartaceaLimiti della soluzione cartacea

Realizzazione di una soluzione Realizzazione di una soluzione informatica: archivio elettronicoinformatica: archivio elettronico– Progetto di un databaseProgetto di un database– Confronto con la soluzione cartaceaConfronto con la soluzione cartacea

Page 8: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

8

SSISSSIS

Tipica soluzione pre-Tipica soluzione pre-informaticainformatica

Realizzazione di un Realizzazione di un archivio cartaceoarchivio cartaceo, ovvero , ovvero uno uno schedarioschedario con con cassetticassetti contenenti contenenti schedeschede informativeinformative

Effettuare le operazioni di ricerca e statistica Effettuare le operazioni di ricerca e statistica aprendo i cassetti dello schedario e operando aprendo i cassetti dello schedario e operando manualmente sulle schedemanualmente sulle schede

Opportune tecniche di archiviazione Opportune tecniche di archiviazione (ordinamento delle schede e indici sulle (ordinamento delle schede e indici sulle schede) possono talvolta velocizzare alcune schede) possono talvolta velocizzare alcune delle operazionidelle operazioni

Page 9: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

9

SSISSSIS

Schedario: rappresentazione Schedario: rappresentazione della realtàdella realtà

Uno schedario è una Uno schedario è una rappresentazione rappresentazione inin carta e carta e inchiostro dei inchiostro dei fattifatti interessanti della nostra interessanti della nostra realtà realtà di interessedi interesse

La realtà di interesseLa realtà di interesse che stiamo studiando è che stiamo studiando è quella dei pazienti di un medicoquella dei pazienti di un medico

I fatti interessanti sono tutte e sole le informazioni I fatti interessanti sono tutte e sole le informazioni riguardanti la realtà dei pazienti utili a migliorare il riguardanti la realtà dei pazienti utili a migliorare il servizio ambulatorialeservizio ambulatoriale

Le informazioni rilevanti di un paziente devono Le informazioni rilevanti di un paziente devono essere essere scrittescritte in una rispettiva in una rispettiva schedascheda, contenuta , contenuta in un in un cassettocassetto dello schedario dedicato ai pazienti dello schedario dedicato ai pazienti

Page 10: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

10

SSISSSIS

Schedario dei pazientiSchedario dei pazienti Lo schedario che costruiremo rappresenta in carta Lo schedario che costruiremo rappresenta in carta

e inchiostro la realtà di interesse dei pazientie inchiostro la realtà di interesse dei pazienti– Se la signora Se la signora Maria BianchiMaria Bianchi diventa una paziente del diventa una paziente del

medico, si deve inserire una nuova scheda nel medico, si deve inserire una nuova scheda nel cassetto, la quale riporta tutte le informazioni rilevanti cassetto, la quale riporta tutte le informazioni rilevanti riguardo la signora riguardo la signora MariaMaria

– Se il medico prevede di dover utilizzare in futuro il peso Se il medico prevede di dover utilizzare in futuro il peso del paziente del paziente Mario RossiMario Rossi, allora il peso deve essere , allora il peso deve essere scritto sulla sua schedascritto sulla sua scheda

– Se il paziente Se il paziente Mario RossiMario Rossi cambia indirizzo, il cambia indirizzo, il cambiamento deve essere riportato sulla sua schedacambiamento deve essere riportato sulla sua scheda

– Se il paziente Se il paziente Mario Rossi Mario Rossi decide di cambiare medico, decide di cambiare medico, la sua scheda deve essere eliminata dal cassettola sua scheda deve essere eliminata dal cassetto

Page 11: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

11

SSISSSIS

Cassetto Cassetto PazientiPazientiPaziente dal 01/08/1995 CSSN:

0603/3454567

DATI ANAGRAFICI E MEDICI:Nome: Maria Bianchi Indirizzo:Anno di nascita: 1950 Via Marmolada 67Luogo di Nascita: Pisa 56126 PisaStato coniugale: sposata Tel: 347 8910111Gruppo sanguigno: A Positivo Altezza: 158 cmPeso: 56 kgMenarca: 13 anniModalità parto: naturale

Paziente dal 11/04/2000 CSSN: 0601/1234567

DIARIO:

Prima visita: influenza, consigliata tachipirina (02/04/2000)

Seconda: 14/09/2000, Commento: allergia, rich. visita specialistica

3 visita: 02/02/2001 ....

Patologie:

1957 morbillo

1960 rosolia

Schedario pazientiSchedario pazienti

Page 12: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

12

SSISSSIS

Paziente dal 15/11/1996 CSSN: 0604/9786554

Cassetto Cassetto PazientiPazienti

DATI ANAGRAFICI:Nome: Mario Indirizzo:Cognome: Rossi Via Palestro 6Anno di nascita: 1964 50100 FirenzeLuogo di Nascita: Firenze Tel.: 345 678910Cittadinanza: Italiana E-mail: [email protected]

DIARIO:Data: 22/03/2000 Commento: influenza, sintomi classiciLi: 3 maggio 2002 Comm.: forte tosse, consigliato TosseVia 1000 per una settimana Data: 23/08/2002 ...

DATI MEDICI:

Gruppo sanguigno: B Negativo

Altezza e peso: 1.65 m, 63 Kg

Patologie: morbillo (1970), parotite (1971),

rosolia (1973), varicella (1973)

CSSN: 0608/7654321

Schedario pazientiSchedario pazienti

Page 13: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

13

SSISSSIS

Le operazioniLe operazioni Osservazione: il medico prevede di effettuare Osservazione: il medico prevede di effettuare

molte ricerche in base al cognome del pazientemolte ricerche in base al cognome del paziente Ordiniamo le schede nel cassetto dei pazienti Ordiniamo le schede nel cassetto dei pazienti

in ordine alfabetico rispetto al cognomein ordine alfabetico rispetto al cognome Quanto pesa il paziente Mario Rossi? Quanto pesa il paziente Mario Rossi? Nel Nel

cassetto relativo ai pazienti cerchiamocassetto relativo ai pazienti cerchiamo la la sezione dedicata alla lettera sezione dedicata alla lettera RR e tra queste la e tra queste la scheda del paziente scheda del paziente RossiRossi MarioMario. .

Quindi leggiamo il peso Quindi leggiamo il peso riportato sulla schedariportato sulla scheda

Schedario pazientiSchedario pazienti

Page 14: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

14

SSISSSIS

I problemiI problemi

Mancanza di progettazione dello Mancanza di progettazione dello schedarioschedario– Assenza parziale o totale di informazioniAssenza parziale o totale di informazioni– Eterogeneità delle informazioni sulle schedeEterogeneità delle informazioni sulle schede

Problemi intrinseci agli schedariProblemi intrinseci agli schedari– Uso del supporto cartaceo per conservare Uso del supporto cartaceo per conservare

informazioniinformazioni– Controlli di correttezza e operazioni eseguiti Controlli di correttezza e operazioni eseguiti

manualmentemanualmente

Schedario pazientiSchedario pazienti

Page 15: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

15

SSISSSIS

Assenza Assenza parzialeparziale di informazioni di informazioni

L’operazione:L’operazione:– Quanti pazienti sono di cittadinanza Quanti pazienti sono di cittadinanza

italiana?italiana?

non può essere eseguita per assenza non può essere eseguita per assenza parziale parziale di informazionidi informazioni

Non tutte le schede riportano Non tutte le schede riportano informazioni sulla cittadinanza, quindi il informazioni sulla cittadinanza, quindi il risultato di un conteggio sarebbe falsatorisultato di un conteggio sarebbe falsato

Problemi dello schedario: Mancanza di progettazioneProblemi dello schedario: Mancanza di progettazione

Page 16: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

16

SSISSSIS

Assenza Assenza totaletotale di informazioni di informazioni

L’operazione:L’operazione:– Quanti pazienti di sesso femminile sono Quanti pazienti di sesso femminile sono

presenti?presenti?

non può essere eseguita per assenza non può essere eseguita per assenza totale totale di informazionidi informazioni

Nessuna scheda riporta informazioni sul Nessuna scheda riporta informazioni sul sesso del pazientesesso del paziente

Problemi dello schedario: Mancanza di progettazioneProblemi dello schedario: Mancanza di progettazione

Page 17: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

17

SSISSSIS

Assenza di omogeneitàAssenza di omogeneità

L’operazione:L’operazione:– Trovare il nome, il cognome e il CSSN del paziente più pesanteTrovare il nome, il cognome e il CSSN del paziente più pesante

per quanto intuitivamente semplice diventa estremamente per quanto intuitivamente semplice diventa estremamente tediosatediosa

ÈÈ necessario scorrere tutte le schede dell’archivio necessario scorrere tutte le schede dell’archivio Inoltre, le stesse informazioni sono riportate sulle schede Inoltre, le stesse informazioni sono riportate sulle schede

in maniera eterogenea: individuare la posizione del in maniera eterogenea: individuare la posizione del nomenome, , del del cognomecognome e e pesopeso su una scheda diviene non banale su una scheda diviene non banale

Problemi dello schedario: Mancanza di progettazioneProblemi dello schedario: Mancanza di progettazione

Page 18: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

18

SSISSSIS

Assenza di omogeneitàAssenza di omogeneitàPaziente dal 01/08/1995 CSSN:

0603/3454567

DATI ANAGRAFICI E MEDICI:Nome: Maria Bianchi Indirizzo:Anno di nascita: 1950 Via Marmolada 67Luogo di Nascita: Pisa 56126 PisaStato coniugale: sposata Tel: 347 8910111Gruppo sanguigno: A Positivo Altezza: 158 cmPeso: 56 kgMenarca: 13 anniModalità parto: naturale

Paziente dal 11/04/2000 CSSN: 0601/1234567

DIARIO:

Prima visita: influenza, consigliata tachipirina (02/04/2000)

Seconda: 14/09/2000, Commento: allergia, rich. visita specialistica

3 visita: 02/02/2001 ....

Patologie:

1957 morbillo

1960 rosolia

Schedario pazientiSchedario pazienti

Page 19: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

19

SSISSSIS

Paziente dal 15/11/1996 CSSN: 0604/9786554

Assenza di omogeneitàAssenza di omogeneità

DATI ANAGRAFICI:Nome: Mario Indirizzo:Cognome: Rossi Via Palestro 6Anno di nascita: 1964 50100 FirenzeLuogo di Nascita: Firenze Tel.: 345 678910Cittadinanza: Italiana E-mail: [email protected]

DIARIO:Data: 22/03/2000 Commento: influenza, sintomi classiciLi: 3 maggio 2002 Comm.: forte tosse, consigliato TosseVia 1000 per una settimana Data: 23/08/2002 ...

DATI MEDICI:

Gruppo sanguigno: B Negativo

Altezza e peso: 1.65 m, 63 Kg

Patologie: morbillo (1970), parotite (1971),

rosolia (1973), varicella (1973)

CSSN: 0608/7654321

Schedario pazientiSchedario pazienti

Page 20: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

20

SSISSSIS

Archivio non ben progettatoArchivio non ben progettato Le informazioni riportate sulle schede non Le informazioni riportate sulle schede non

sono scelte sulla base di un’attenta analisi sono scelte sulla base di un’attenta analisi delle operazioni che si intendono effettuaredelle operazioni che si intendono effettuare– Informazioni inutili: Informazioni inutili: menarca menarca ee modalità parto modalità parto– Informazioni non sempre presenti: Informazioni non sempre presenti: e-mail, e-mail,

cittadinanza, data di inizio rapporto del pazientecittadinanza, data di inizio rapporto del paziente– Informazioni assenti: Informazioni assenti: sessosesso, , tipologia di visita tipologia di visita

(domicilio o in studio)(domicilio o in studio)

Problemi dello schedario: Mancanza di progettazioneProblemi dello schedario: Mancanza di progettazione

Page 21: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

21

SSISSSIS

Le informazioni riportate sulle schede Le informazioni riportate sulle schede non sono strutturate non sono strutturate omogeneamenteomogeneamente– Informazioni presenti su tutte le schede ma Informazioni presenti su tutte le schede ma

esposte in maniera diversa: esposte in maniera diversa: nome e nome e cognome, altezza e peso, visite del cognome, altezza e peso, visite del paziente, patologiepaziente, patologie

Archivio non ben progettatoArchivio non ben progettatoProblemi dello schedario: Mancanza di progettazioneProblemi dello schedario: Mancanza di progettazione

Page 22: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

22

SSISSSIS

Riepilogo conseguenzeRiepilogo conseguenze

Alcune operazioni interessanti possono divenire Alcune operazioni interessanti possono divenire molto laboriose o impossibili per l’assenza totale molto laboriose o impossibili per l’assenza totale o parziale delle informazionio parziale delle informazioni– Quanti pazienti sono di cittadinanza italiana? (Quanti pazienti sono di cittadinanza italiana? (parzialeparziale))– Da quando è mio paziente Mario Rossi? (Da quando è mio paziente Mario Rossi? (parzialeparziale))– Quando è stata fatta l’ultima visita a domicilio al Quando è stata fatta l’ultima visita a domicilio al

paziente Maria Bianchi? (paziente Maria Bianchi? (totaletotale))

Trovare un’informazione su una scheda è tediosoTrovare un’informazione su una scheda è tedioso– Ogni scheda possiede una propria interpretazione Ogni scheda possiede una propria interpretazione

delle informazioni interessanti di un pazientedelle informazioni interessanti di un paziente

Problemi dello schedario: Mancanza di progettazioneProblemi dello schedario: Mancanza di progettazione

Page 23: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

23

SSISSSIS

Buona progettazioneBuona progettazione

MassimizzareMassimizzare la quantità e la qualità dei servizi la quantità e la qualità dei servizi per cui l’archivio si è reso necessarioper cui l’archivio si è reso necessario– Il maggior numero di operazioni necessarie al Il maggior numero di operazioni necessarie al

medico devono essere eseguibili nel minor tempo medico devono essere eseguibili nel minor tempo possibilepossibile

MinimizzareMinimizzare il numero di modifiche in corso il numero di modifiche in corso d’opera allo schedario necessarie a introdurre d’opera allo schedario necessarie a introdurre o migliorare i servizi di cui soprao migliorare i servizi di cui sopra– ÈÈ costoso in termini di tempo (o impossibile) costoso in termini di tempo (o impossibile)

operare modifiche sui cassetti o sulle schede operare modifiche sui cassetti o sulle schede contenute in uno schedario avviatocontenute in uno schedario avviato

Page 24: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

24

SSISSSIS

Progettare e realizzareProgettare e realizzare

La La progettazioneprogettazione di uno schedario si di uno schedario si basa su un’attenta analisi della basa su un’attenta analisi della realtà di realtà di interesse interesse che si conclude con la che si conclude con la definizione di un definizione di un modellomodello schematico schematico della realtà stessadella realtà stessa

La La realizzazionerealizzazione di un schedario si basa di un schedario si basa fedelmente su questo modello della fedelmente su questo modello della realtàrealtà

Buona progettazioneBuona progettazione

Page 25: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

25

SSISSSIS

Il modelloIl modello Un modello è una rappresentazione Un modello è una rappresentazione

schematica dei schematica dei fattifatti interessanti della interessanti della realtà di realtà di interesse interesse in termini di in termini di entitàentità, , attributi delle attributi delle entitàentità e e collezioni di entitàcollezioni di entità – Un Un pazientepaziente è un fatto interessante della nostra è un fatto interessante della nostra

realtà di tipo entitàrealtà di tipo entità – nomenome e e pesopeso dei pazienti sono fatti interessanti di dei pazienti sono fatti interessanti di

tipo attributo delle entità (fatti che tipo attributo delle entità (fatti che contraddistinguono un’entità)contraddistinguono un’entità)

– l’l’insiemeinsieme dei pazientidei pazienti è un fatto interessante di tipo è un fatto interessante di tipo collezione di entità,collezione di entità, cioè un insieme di entità che cioè un insieme di entità che hanno gli stessi attributihanno gli stessi attributi

Buona progettazioneBuona progettazione

Page 26: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

26

SSISSSIS

Operazioni e fatti Operazioni e fatti

I fatti interessanti di una realtà si I fatti interessanti di una realtà si identificano a partire dalle operazioni identificano a partire dalle operazioni che si intendono effettuareche si intendono effettuare

Nella realtà dei pazienti è necessario Nella realtà dei pazienti è necessario effettuare ricerche e statistiche su effettuare ricerche e statistiche su informazioni relative ai pazientiinformazioni relative ai pazienti

Buona progettazione: Il modelloBuona progettazione: Il modello

Page 27: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

27

SSISSSIS

Modello della realtà dei pazientiModello della realtà dei pazienti

Visto il tipo di operazioni richieste, un modello Visto il tipo di operazioni richieste, un modello ragionevole della nostra realtà potrebbe ragionevole della nostra realtà potrebbe essere:essere:– Una sola collezione Una sola collezione PazientiPazienti in cui ogni entità è un in cui ogni entità è un

paziente con i seguenti attributipaziente con i seguenti attributi» data di inserimento nello schedariodata di inserimento nello schedario» CSSNCSSN» nomenome» cognomecognome» anno di nascitaanno di nascita» luogo di nascitaluogo di nascita» cittadinanzacittadinanza» indirizzoindirizzo

» telefonotelefono

» e-maile-mail

» gruppo sanguignogruppo sanguigno

» altezzaaltezza

» pesopeso

» sessosesso

» patologie (anno)patologie (anno)

» visite: data, tipo, esitovisite: data, tipo, esito

Buona progettazione: Il modelloBuona progettazione: Il modello

Page 28: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

28

SSISSSIS

Dal modello allo schedarioDal modello allo schedario Ad ogni entità nel modello è associata una Ad ogni entità nel modello è associata una schedascheda

nello schedarionello schedario– Una scheda per ogni pazienteUna scheda per ogni paziente

Ogni attributo di un’entità è rappresentato da Ogni attributo di un’entità è rappresentato da un’un’informazioneinformazione sulla rispettiva scheda, nella sulla rispettiva scheda, nella forma:forma:– Nome attributo: valore attributoNome attributo: valore attributo– Ad esempio,Ad esempio, Peso: 56 Kg Peso: 56 Kg

Ad ogni collezione di entità nel modello è Ad ogni collezione di entità nel modello è associato un associato un cassettocassetto dello schedario, quindi tutte dello schedario, quindi tutte le schede relative alle entità di una collezione le schede relative alle entità di una collezione sono contenute nello stesso cassettosono contenute nello stesso cassetto

Buona progettazione: RealizzazioneBuona progettazione: Realizzazione

Page 29: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

29

SSISSSIS

IdentitàIdentità Supponiamo di avere 2 pazienti di nome Supponiamo di avere 2 pazienti di nome Mario Mario

Rossi,Rossi, come potremmo eseguire l’operazione come potremmo eseguire l’operazionetrovare il peso di Mario Rossitrovare il peso di Mario Rossi? ?

troveremmo due schede nello schedario, a troveremmo due schede nello schedario, a quale dovremmo riferirci per trovare la risposta?quale dovremmo riferirci per trovare la risposta?

Ogni entità nella realtà possiede Ogni entità nella realtà possiede un’identitàun’identità propria che la distingue da tutte le altre entitàpropria che la distingue da tutte le altre entità– i due pazienti i due pazienti Mario RossiMario Rossi seduti nel vostro studio seduti nel vostro studio

sono distinti dalla propria identità di persone: voi sono distinti dalla propria identità di persone: voi scegliereste a quale dei due chiedere il pesoscegliereste a quale dei due chiedere il peso

Buona progettazione: Il modelloBuona progettazione: Il modello

Page 30: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

30

SSISSSIS

Identità nello schedarioIdentità nello schedario

Problema tipico di ogni rappresentazione di una Problema tipico di ogni rappresentazione di una realtà: rappresentare l’identità delle entitàrealtà: rappresentare l’identità delle entità

Esempi noti di rappresentazioni di identità:Esempi noti di rappresentazioni di identità:– CSSN (realtà sanitaria)CSSN (realtà sanitaria)– Codice Fiscale (realtà dello stato italiano)Codice Fiscale (realtà dello stato italiano)

Nello schedario dei pazienti potremmo quindi Nello schedario dei pazienti potremmo quindi sfruttare l’unicità del codice CSSN per distinguere sfruttare l’unicità del codice CSSN per distinguere univocamente le nostre schedeunivocamente le nostre schede

In questo modo potremmo definire operazioni non In questo modo potremmo definire operazioni non ambigue del tipo: ambigue del tipo:

trovare il peso del paziente Mario Rossi con CSSN trovare il peso del paziente Mario Rossi con CSSN 0608/76543210608/7654321

Buona progettazione: Il modelloBuona progettazione: Il modello

Page 31: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

31

SSISSSIS

Identità con chiave mutaIdentità con chiave muta

Buona regola di progettazione:Buona regola di progettazione:Per rappresentare l’identità è bene introdurre per Per rappresentare l’identità è bene introdurre per ogni cassetto un codice unico, detto ogni cassetto un codice unico, detto chiave mutachiave muta

Tale codice è detto Tale codice è detto chiave muta chiave muta (o (o anonimaanonima) ) perché non rappresenta nessun fatto della perché non rappresenta nessun fatto della realtà modellata, ma è introdotto con l’unico realtà modellata, ma è introdotto con l’unico scopo di rappresentare l’identitàscopo di rappresentare l’identità

Tipicamente i valori della chiave muta sono Tipicamente i valori della chiave muta sono numeri interi progressivinumeri interi progressivi– Nel nostro schedario introdurremo come chiave Nel nostro schedario introdurremo come chiave

muta il codice della schedamuta il codice della scheda pazientepaziente, , un numero un numero intero progressivo associato ad ogni schedaintero progressivo associato ad ogni scheda

Buona progettazione: Il modelloBuona progettazione: Il modello

Page 32: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

32

SSISSSIS

Struttura omogenea delle schedeStruttura omogenea delle schedeBuona progettazione: Il modelloBuona progettazione: Il modello

Dati medici:

Gruppo sanguigno:

Altezza: m

Peso: kg

Scheda paziente:

Diario:

Prima visita: influenza, consigliata tachipirina (02/04/2000)

Seconda visita: 14/09/2000, Commento: allergia, rich. visita specialistica

3 visita: 02/02/2001 ....

Paziente dal: CSSN: /

Visite:

Data: Tipo [studio/domicilio]: Esito:

FOTO

Dati anagrafici:

Nome: Indirizzo:

Cognome:

Anno di nascita:

Sesso: Tel.:

Cittadinanza: E-mail:

Patologie [nome (anno)]:

Per garantire l’omogeneitPer garantire l’omogeneitàà dello schedario si definisce dello schedario si definisce un fac-simile della generica scheda paziente. Questo un fac-simile della generica scheda paziente. Questo guida il guida il medico nel medico nel corretto corretto inserimento di inserimento di informazioniinformazioni

M F

Page 33: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

33

SSISSSIS

Struttura omogenea delle schedeStruttura omogenea delle schedeBuona progettazione: Il modelloBuona progettazione: Il modello

Dati medici:

Gruppo sanguigno:

Altezza: m

Peso: kg

Scheda paziente:

Diario:

Prima visita: influenza, consigliata tachipirina (02/04/2000)

Seconda visita: 14/09/2000, Commento: allergia, rich. visita specialistica

3 visita: 02/02/2001 ....

Paziente dal: CSSN: /

Visite:

Data: Tipo [studio/domicilio]: Esito:

FOTO

Dati anagrafici:

Nome: Indirizzo:

Cognome:

Anno di nascita:

Sesso: Tel.:

Cittadinanza: E-mail:

Patologie [nome (anno)]:

Per garantire l’omogeneitPer garantire l’omogeneitàà dello schedario si definisce un dello schedario si definisce un fac-simile della generica scheda paziente. Questo guida fac-simile della generica scheda paziente. Questo guida il il medico nel medico nel corretto corretto inserimento di inserimento di informazioniinformazioni

M F

Unità di misura uguali per tutte le

schede

Tracce per la compilazione uniforme delle informazioni

Page 34: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

34

SSISSSIS

Struttura omogenea delle schedeStruttura omogenea delle schede

DATI ANAGRAFICI:Nome: Mario Indirizzo:Cognome: Rossi Via Palestro 6Anno di nascita: 1964 50100 FirenzeLuogo di Nascita: Firenze Tel.: 345 678910Cittadinanza: Italiana E-mail: [email protected]

DIARIO:Data: 22/03/2000 Commento: influenza, sintomi classiciLi: 3 maggio 2002 Comm.: forte tosse, consigliato TosseVia 1000 per una settimana Data: 23/08/2002 ...

DATI MEDICI:

Gruppo sanguigno: B Negativo

Altezza e peso: 1.65 m, 63 Kg

Patologie: morbillo (1970), parotite (1971),

rosolia (1973), varicella (1973)

CSSN: 0608/7654321Scheda paziente: 31 Paziente dal: 10/12/99 CSSN: 0608/7654321Dati anagrafici:

Nome: Mario Indirizzo:

Cognome: Rossi Via Palestro 6Anno di nascita: 1964 50100 FirenzeSesso: Tel.: 345 678910Cittadinanza: Italiana E-mail: [email protected]

M F

Dati medici:

Gruppo sanguigno: B NegativoAltezza: 1.65 m

Peso: 63 kg

Patologie [nome (anno)]:

morbillo (1970), parotite (1971), rosolia (1973), varicella (1973)

Visite:

Data Tipo [studio/domicilio] Esito

22/03/2000 domicilio influenza, sintomi classici03/05/2002 studio forte tosse, consigliato

TosseVia 1000 per una sett...

Buona progettazione: Il modelloBuona progettazione: Il modello

Page 35: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

36

SSISSSIS

Struttura omogenea delle schedeStruttura omogenea delle schedeBuona progettazione: Il modelloBuona progettazione: Il modello

DATI ANAGRAFICI E MEDICI:Nome: Maria Bianchi Indirizzo:Anno di nascita: 1950 Via Marmolada 67Luogo di Nascita: Pisa 56126 PisaStato coniugale: sposata Tel: 347 8910111Gruppo sanguigno: A Positivo Altezza: 158 cmPeso: 56 kgMenarca: 13 anniModalità parto: naturale

Paziente dal 11/04/2000 CSSN: 0601/1234567

DIARIO:

Prima visita: influenza, consigliata tachipirina (02/04/2000)

Seconda: 14/09/2000, Commento: allergia, rich. visita specialistica

3 visita: 02/02/2001 ....

Patologie:

1957 morbillo

1960 rosolia

DATI ANAGRAFICI:Nome: Mario Indirizzo:Cognome: Rossi

Via Palestro 6Anno di nascita: 1964

50100 FirenzeLuogo di Nascita: Firenze Tel.: 345 678910Cittadinanza: Italiana

E-mail: [email protected]

DIARIO:Data: 22/03/2000 Commento: influenza, sintomi classiciLi: 3 maggio 2002 Comm.: forte tosse, consigliato TosseVia 1000 per una settimana Data: 23/08/2002 ...

DATI MEDICI:

Gruppo sanguigno: B Negativo

Altezza e peso: 1.65 m, 63 Kg

Patologie: morbillo (1970), parotite (1971),

rosolia (1973), varicella (1973)

CSSN: 0608/7654321

Scheda paziente: 12

Visite:

Data Tipo [studio/domicilio] Esito

02/04/2000 domicilio influenza, tachipirina14/09/2000 studio allergia, rich. Visita specialistica

Dati anagrafici:

Nome: Maria Indirizzo:

Cognome: Bianchi Via Marmolada 67

Anno di nascita: 1950 56126 Pisa

Sesso: Tel. 7 8910111Cittadinanza: Italiana E-mail: -

Dati medici:

Gruppo sanguigno: A PositivoAltezza: 1.58 m

Peso: 56 kg

Patologie [nome (anno)]:

morbillo (1957), rosolia (1960)

Paziente dal: 11/04/2000 CSSN: 0601/1234567

M F

DATI ANAGRAFICI:Nome: Mario Indirizzo:Cognome: Rossi

Via Palestro 6Anno di nascita: 1964

50100 FirenzeLuogo di Nascita: Firenze Tel.: 345 678910Cittadinanza: Italiana

E-mail: [email protected] MEDICI:

Gruppo sanguigno: B Negativo

Altezza e peso: 1.65 m, 63 Kg

Scheda paziente: 31

Dati anagrafici:

Nome: Mario Indirizzo:

Cognome: Rossi Via Palestro 6Anno di nascita: 1964 50100 FirenzeSesso: M F Tel.: 345 678910Cittadinanza: Italiana E-mail: [email protected]

Dati medici:

Gruppo sanguigno: B NegativoAltezza: 1.65 m

Peso: 63 kg

Patologie [nome (anno)]:

morbillo (1970), parotite (1971), rosolia (1973), varicella (1973)

Paziente dal: 10/12/99 CSSN: 0608/7654321

DIARIO:Data: 22/03/2000 Commento: influenza, sintomi classiciLi: 3 maggio 2002 Comm.: forte tosse, consigliato TosseVia 1000 per una settimana Data: 23/08/2002 ...

Visite:

Data Tipo [studio/domicilio] Esito

22/03/2000 domicilio influenza, sintomi classici03/05/2002 studio forte tosse, consigliato

Page 36: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

37

SSISSSIS

Le operazioniLe operazioni Le schede sono ordinate in ordine alfabetico per Le schede sono ordinate in ordine alfabetico per

cognome e nomecognome e nome Le operazioni di ricerca per cognome sono le Le operazioni di ricerca per cognome sono le

più rapidepiù rapide– Qual’è il telefono di Qual’è il telefono di Maria BianchiMaria Bianchi??

Le operazioni di ricerca non basate sul cognome Le operazioni di ricerca non basate sul cognome e quelle di statistica richiedono in generale lo e quelle di statistica richiedono in generale lo scorrimento di tutte le schede dell’archivioscorrimento di tutte le schede dell’archivio– Qual’è il telefono del paziente con Qual’è il telefono del paziente con CSSNCSSN

0608/76543210608/7654321– Quanti pazienti hanno gruppo sanguigno Quanti pazienti hanno gruppo sanguigno B B

Negativo?Negativo?

Problemi dello schedario: Problemi intrinseciProblemi dello schedario: Problemi intrinseci

Page 37: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

38

SSISSSIS

Velocizzare le ricerche: IndiciVelocizzare le ricerche: Indici Qual’è il telefono del paziente conQual’è il telefono del paziente con CSSN 0608/7654321 CSSN 0608/7654321??

– Per rendere l’operazione più rapida si può tenere aggiornato un indice Per rendere l’operazione più rapida si può tenere aggiornato un indice cartaceo (simile all’indice analitico di un libro) in cui vengono tenuti tutti i cartaceo (simile all’indice analitico di un libro) in cui vengono tenuti tutti i nomi dei pazienti ordinati per CSSNnomi dei pazienti ordinati per CSSN

– Dato il Dato il CSSN 0608/7654321CSSN 0608/7654321, tramite l’indice si può risalire rapidamente al , tramite l’indice si può risalire rapidamente al nome Mario Rossi, cercare la scheda corrispondente nel cassetto e nome Mario Rossi, cercare la scheda corrispondente nel cassetto e trovare il telefonotrovare il telefono

Indice schede…0601/1234567, Bianchi Maria0604/9786554, Verdi Luigi0608/7654321, Rossi Mario…

Problemi dello schedario: Problemi intrinseciProblemi dello schedario: Problemi intrinseci

Page 38: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

39

SSISSSIS

Velocizzare le statisticheVelocizzare le statistiche

Quanti pazienti hanno gruppo sanguigno Quanti pazienti hanno gruppo sanguigno B NegativoB Negativo??– Per rendere efficiente l’operazione si può tenere un indice Per rendere efficiente l’operazione si può tenere un indice

per ogni gruppo sanguignoper ogni gruppo sanguigno

– Dall’indice relativo al gruppo B Negativo si può ricavare Dall’indice relativo al gruppo B Negativo si può ricavare rapidamente il totale desiderato contandone gli elementirapidamente il totale desiderato contandone gli elementi

Indice gruppo: B Negativo…Rossi MarioVerdi Luigi…

Indice gruppo: A Positivo…Bianchi MariaGialli Marta…

Problemi dello schedario: Problemi intrinseciProblemi dello schedario: Problemi intrinseci

Page 39: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

40

SSISSSIS

Problemi pratici di uno schedarioProblemi pratici di uno schedario

Dato l’ordine alfabetico delle schede, le Dato l’ordine alfabetico delle schede, le operazioni di ricerca e statistica in base al operazioni di ricerca e statistica in base al cognome del paziente sono le uniche cognome del paziente sono le uniche veramente rapideveramente rapide

All’aumentare del numero delle schede, le All’aumentare del numero delle schede, le operazioni di ricerca non basate sul cognome operazioni di ricerca non basate sul cognome e quelle statistiche divengono molto laboriose e quelle statistiche divengono molto laboriose e soggette ad erroree soggette ad errore

Problemi dello schedario: Problemi intrinseciProblemi dello schedario: Problemi intrinseci

Page 40: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

41

SSISSSIS

Problemi pratici di uno schedarioProblemi pratici di uno schedario Gli indici sono una possibile soluzione, ma il loro aggiornamento richiede Gli indici sono una possibile soluzione, ma il loro aggiornamento richiede

tempo e energietempo e energie Devono essere aggiornati tutti in seguito all’inserimento di ogni nuova schedaDevono essere aggiornati tutti in seguito all’inserimento di ogni nuova scheda Sono spesso soggetti ad errore umano, di scrittura o copiaturaSono spesso soggetti ad errore umano, di scrittura o copiatura Dato lo sforzo richiesto per tenere gli indici, il loro numero è piuttosto basso, Dato lo sforzo richiesto per tenere gli indici, il loro numero è piuttosto basso,

quindi alcune operazioni sulle schede rimarranno sempre proibitivequindi alcune operazioni sulle schede rimarranno sempre proibitive

Problemi dello schedario: Problemi intrinseciProblemi dello schedario: Problemi intrinseci

Page 41: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

42

SSISSSIS

Piano della lezionePiano della lezione

Problema dell’archivio dei pazientiProblema dell’archivio dei pazienti Realizzazione di una soluzione pre-Realizzazione di una soluzione pre-

informatica: archivio cartaceoinformatica: archivio cartaceo– Importanza della buona progettazione Importanza della buona progettazione – Limiti della soluzione cartaceaLimiti della soluzione cartacea

Realizzazione di una soluzione Realizzazione di una soluzione informatica: archivio elettronicoinformatica: archivio elettronico– Progetto di un databaseProgetto di un database– Confronto con la soluzione cartaceaConfronto con la soluzione cartacea

Page 42: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

43

SSISSSIS

Soluzione informaticaSoluzione informatica

In informatica, la gestione automatica e In informatica, la gestione automatica e organizzata di grandi quantità di organizzata di grandi quantità di informazioni, è risolta adottando informazioni, è risolta adottando Sistemi Sistemi per la Gestione di Basi di Datiper la Gestione di Basi di Dati (SGBD, (SGBD, in inglese in inglese DataBase Management DataBase Management SystemSystem, DBMS), DBMS)

Page 43: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

44

SSISSSIS

Progettazione e realizzazione Progettazione e realizzazione di un databasedi un database

Un database è una Un database è una rappresentazione rappresentazione elettronicaelettronica, della , della realtà di interesse: realtà di interesse: ogni fatto interessante della realtà deve ogni fatto interessante della realtà deve essere rappresentato nel database in essere rappresentato nel database in forma di forma di dati elettronicidati elettronici

La progettazione di un database è come La progettazione di un database è come quella di uno schedario e consiste nel quella di uno schedario e consiste nel definire un modello schematico della definire un modello schematico della realtàrealtà

Page 44: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

45

SSISSSIS

Realizzazione di un databaseRealizzazione di un database

Dato un modello della realtàDato un modello della realtà– Ad ogni Ad ogni collezione di entitàcollezione di entità nella realtà di nella realtà di

interesse corrisponde una interesse corrisponde una tabella tabella nel nel databasedatabase

– Ad ogni Ad ogni entitàentità nella realtà corrisponde un nella realtà corrisponde un recordrecord di una tabella di una tabella

– Ad ogni Ad ogni attributoattributo di un’entità corrisponde di un’entità corrisponde un un campocampo del record relativo a quell’entità del record relativo a quell’entità

Page 45: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

46

SSISSSIS

Schedario e database:Schedario e database:collezione di entitàcollezione di entità

Dati anagrafici:Nome: MarioCognome: RossiAnno di nascita: 1964 …

Dati medici:

Gruppo sanguigno: B Negativo …

Scheda paziente: 31

Diario:

Data: 22/03/2000 Commento: influenza, sintomi classici...

Visite:

Data: 22/03/2000 Tipo: domicilio

Esito: influenza, sintomi classici …

Paziente dal: 10/12/1999 CSSN: 0608/7654321

Cassetto Pazienti

Ad un cassetto dello Ad un cassetto dello schedario corrisponde schedario corrisponde una tabella del una tabella del databasedatabase

Page 46: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

47

SSISSSIS

Schedario e database: entitàSchedario e database: entitàDati anagrafici:Nome: MarioCognome: RossiAnno di nascita: 1964 …

Dati medici:

Gruppo sanguigno: B Negativo …

Scheda paziente: 31

Diario:

Data: 22/03/2000 Commento: influenza, sintomi classici...

Visite:

Data: Tipo [studio/domicilio] Esito

22/03/2000 domicilio influenza, …

Paziente dal: 10/12/1999 CSSN: 0608/7654321

Cassetto Pazienti

Ad una scheda del Ad una scheda del

cassetto cassetto corrisponde un corrisponde un record della tabellarecord della tabella

Page 47: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

48

SSISSSIS

Schedario e database: attributiSchedario e database: attributi Ad ogni informazione Ad ogni informazione

sulla scheda sulla scheda corrisponde corrisponde un valore nel record un valore nel record

Dati anagrafici:Nome: MarioCognome: RossiAnno di nascita: 1964 …

Dati medici:

Gruppo sanguigno: B Negativo …

Scheda paziente: 31

Diario:

Data: 22/03/2000 Commento: influenza, sintomi classici...

Visite:

Data: Tipo [studio/domicilio] Esito

22/03/2000 domicilio influenza, …

Paziente dal: 10/12/1999 CSSN: 0608/7654321

Cassetto Pazienti

Page 48: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

49

SSISSSIS

Schedario e database: Schedario e database: operazionioperazioni

Un DBMS offre gli strumenti per la Un DBMS offre gli strumenti per la definizione di definizione di interrogazioniinterrogazioni ( (queryquery) su ) su un database: operazioni automatiche un database: operazioni automatiche sui dati che corrispondono alle sui dati che corrispondono alle operazioni manuali sulle schede dello operazioni manuali sulle schede dello schedarioschedario

Page 49: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

50

SSISSSIS

Progettazione di un archivioProgettazione di un archivio Abbiamo visto che è improponibile progettare un Abbiamo visto che è improponibile progettare un

archivio sulla base del solo universo del discorso e archivio sulla base del solo universo del discorso e

senza l’adozione di senza l’adozione di metodologie di progettazionemetodologie di progettazione Un modello (es. un database) è il risultato di un Un modello (es. un database) è il risultato di un

processo di interpretazione, guidato dalle idee e processo di interpretazione, guidato dalle idee e

conoscenze possedute dal soggetto che interpretaconoscenze possedute dal soggetto che interpreta Definire un modello è un’operazione complessa Definire un modello è un’operazione complessa

(intuizione e metodo)(intuizione e metodo)

Page 50: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

51

SSISSSIS

MetodologieMetodologie Esistono metodologie di modellazione che forniscono gli Esistono metodologie di modellazione che forniscono gli

strumenti e strumenti e linguaggilinguaggi per: per:– individuare e rappresentare le componenti interessanti individuare e rappresentare le componenti interessanti

dell’universo del discorso, al fine di realizzarne un dell’universo del discorso, al fine di realizzarne un modello concettualemodello concettuale;;

– per successivamente convertire il modello concettuale per successivamente convertire il modello concettuale in un database relazionalein un database relazionale

Il modello concettuale descrive la realtà in maniera Il modello concettuale descrive la realtà in maniera intuitiva (“poco” informatica) ed è allo stesso tempo intuitiva (“poco” informatica) ed è allo stesso tempo facilmente trasformabile in un database, cioè in un facilmente trasformabile in un database, cioè in un modello della realtà interpretabile da un computermodello della realtà interpretabile da un computer

Page 51: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

52

SSISSSIS

Modellazione e progettazioneModellazione e progettazione

Organizzazione A B

BA

DatabaseArchiviocartaceo

ERModello

concettuale

Mappatura in modello

relazionale equivalente

Creazione DB

Soluzione anni ‘70

Page 52: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

53

SSISSSIS

Linguaggio per la definizioneLinguaggio per la definizionedi modelli: formalismo grafico ERdi modelli: formalismo grafico ER

Descrizione della natura della realtà in Descrizione della natura della realtà in termini di classi e associazionitermini di classi e associazioni

Il modello ER di un universo del Il modello ER di un universo del discorso è detto discorso è detto schemaschema

Page 53: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

54

SSISSSIS

ER: classi e attributiER: classi e attributi

nome

telefono

lingueParlate

multivalore

totale

parziale unione

strutturato

Attributi

Persone

Si modellano le classi, cioè collezioni di entità dalla struttura omogenea

La classe Persone: una collezione di entità persone con proprietà lingueParlate, telefono, nome

Page 54: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

55

SSISSSIS

Es. Associazioni (1:1)Es. Associazioni (1:1)

(1:1) associazione (1:1) associazione CorsiTenuti-TenutoDaCorsiTenuti-TenutoDa tra tra Professori e Corsi: ogni professore deve tenere Professori e Corsi: ogni professore deve tenere unun corso (totale) e ogni Corso è tenuto da corso (totale) e ogni Corso è tenuto da unun professore (totale)professore (totale)

Professori Corsi

corsoTenuto tenutoDa

Aspetto linguisticoAspetto linguistico

Page 55: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

56

SSISSSIS

Es. Associazioni (1:n)Es. Associazioni (1:n)

(1:n) associazione (1:n) associazione Tesista-RelatoreTesista-Relatore tra Professori e tra Professori e Studenti: ogni professore può avere Studenti: ogni professore può avere uno, nessuno o piùuno, nessuno o più tesisti (parziale), mentre uno studente può avere tesisti (parziale), mentre uno studente può avere nessuno nessuno o uno un relatore (parziale) relatore (parziale)

Professori Studenti

relatoreDi tesistaDi

Aspetto linguisticoAspetto linguistico

Page 56: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

57

SSISSSIS

Es. Associazioni (n:n)Es. Associazioni (n:n)

(n:n) associazione (n:n) associazione CorsiSeguiti-StudentiIscrittiCorsiSeguiti-StudentiIscritti tra tra Studenti e Corsi: ogni studente segue Studenti e Corsi: ogni studente segue almeno unalmeno un corso (totale) e ogni corso è seguito da corso (totale) e ogni corso è seguito da almeno almeno unouno studente (totale) studente (totale)

Aspetto linguisticoAspetto linguistico

Corsi Studenti

studentiIscritti corsiSeguiti

Page 57: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

58

SSISSSIS

Esempio:Esempio:Segreteria dell’Univ. di PisaSegreteria dell’Univ. di Pisa

Gestione degli studenti e degli esami da essi Gestione degli studenti e degli esami da essi passatipassati

Le classi di entità in gioco sonoLe classi di entità in gioco sono– Classe degli Classe degli StudentiStudenti: tutti gli studenti iscritti : tutti gli studenti iscritti

all’università, con proprietà all’università, con proprietà NomeNome, , MatricolaMatricola, , ProvinciaProvincia, , Data di nascita Data di nascita

– Classe degli Classe degli EsamiEsami: tutti gli statini (prove ufficiali) : tutti gli statini (prove ufficiali) reative agli esami passati dagli studenti, con reative agli esami passati dagli studenti, con proprietà proprietà CorsoCorso, , VotoVoto, , LodeLode, , Data, CandidatoData, Candidato..

Page 58: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

59

SSISSSIS

Modello concettualeModello concettuale

Esami

esamiSuperati passatoDa

Studenti

Page 59: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

60

SSISSSIS

Soluzione anni ’70 Soluzione anni ’70 (1/2)(1/2)

Uno schedario di studentiUno schedario di studenti– Ad ogni studente corrispondeva una Ad ogni studente corrispondeva una

schedascheda con tutti i suoi dati: con tutti i suoi dati: » nome, matricola, provincia, data di nascitanome, matricola, provincia, data di nascita

Uno schedario degli esamiUno schedario degli esami– Ad ogni esame sostenuto corrispondeva Ad ogni esame sostenuto corrispondeva

uno uno statinostatino: : » candidato, voto, lode (si/no), data, corsocandidato, voto, lode (si/no), data, corso

Page 60: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

61

SSISSSIS

Soluzione anni ’70 Soluzione anni ’70 (2/2)(2/2)

Per cercare gli esami passati dagli Per cercare gli esami passati dagli studenti di Pisa, l’impiegato doveva:studenti di Pisa, l’impiegato doveva:– Cercare nello schedario studenti tutte le Cercare nello schedario studenti tutte le

schede relative a studenti di Pisaschede relative a studenti di Pisa– Per ogni scheda trovata:Per ogni scheda trovata:

» leggere il numero di matricolaleggere il numero di matricola» Cercare nello schedario degli esami, tutti gli Cercare nello schedario degli esami, tutti gli

statini relativi al numero di matricola dello statini relativi al numero di matricola dello studentestudente

Page 61: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

62

SSISSSIS

Soluzione con Database RelazionaleSoluzione con Database Relazionale

Un database relazionale Un database relazionale – Una collezione di dati elettronici che Una collezione di dati elettronici che

rappresentano/modellano una rappresentano/modellano una realtà di interesserealtà di interesse– Ad ogni collezione di entità nella realtà di interesse Ad ogni collezione di entità nella realtà di interesse

corrisponde una corrisponde una tabella tabella nel databasenel database

Page 62: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

63

SSISSSIS

Tabella StudentiTabella Studenti

25/12/198025/12/1980PIPI175649175649BoniniBonini

12/07/197812/07/1978LILI179856179856BianchiBianchi

03/10/197503/10/1975LULU167459167459RossiRossi

01/01/198001/01/1980PIPI171523171523IsaiaIsaia

DataNascitaDataNascitaProvinciaProvinciaMatricolaMatricolaNomeNomeRecord

Campo

Valore

Struttura tabella:Nome: TextMatricola: NumberProvincia: Text(2)DataNascita: Date

Page 63: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

64

SSISSSIS

Tabella EsamiTabella Esami

Struttura tabella:Corso: TextCandidato: TextData: DateVoto: Number(2)Lode: Si/No

30 No30 No13/02/0113/02/01BianchiBianchiFPFP

18 No18 No11/02/0111/02/01IsaiaIsaiaLMMLMM

25 No25 No15/01/0115/01/01BoniniBoniniBDBD

30 Si30 Si15/01/0115/01/01RossiRossiBDBD

28 No28 No12/01/0112/01/01IsaiaIsaiaBDBD

Voto LodeVoto LodeDataDataCandidatoCandidatoMateriaMateria

Page 64: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

65

SSISSSIS

Struttura TabellaStruttura Tabella

Una tabella è una collezione di dati caratterizzati dalla Una tabella è una collezione di dati caratterizzati dalla stessa struttura:stessa struttura:– Insieme di coppie (Insieme di coppie (NomeCampo,TipoCampoNomeCampo,TipoCampo))– Un tipo qualifica quali valori possono essere inseriti Un tipo qualifica quali valori possono essere inseriti

in un campo e di conseguenza quali operazioni sono in un campo e di conseguenza quali operazioni sono consentite su di esso:consentite su di esso:

» NomeNome in in Studenti Studenti è un campo di tipo è un campo di tipo TextText: una sequenza di : una sequenza di caratteri di lunghezza arbitraria; due valori Text possono caratteri di lunghezza arbitraria; due valori Text possono essere concatenati per ottenerne uno solo che li mette essere concatenati per ottenerne uno solo che li mette insiemeinsieme

» DataNascitaDataNascita è un campo di tipo è un campo di tipo DateDate: un valore di tipo : un valore di tipo gg/mm/aaaa; gg/mm/aaaa; un valore Date può essere passato a funzioni un valore Date può essere passato a funzioni che ritornano l’anno, il giorno o il mese del valore.che ritornano l’anno, il giorno o il mese del valore.

Page 65: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

66

SSISSSIS

Chiave Primaria Chiave Primaria (1/3)(1/3)

DefinizioneDefinizione: se un campo di una tabella è : se un campo di una tabella è definito come definito come chiave primariachiave primaria, non esistono due , non esistono due record nella tabella che hanno gli stessi valori record nella tabella che hanno gli stessi valori per quel campoper quel campo

UsoUso: la : la chiavechiave primariaprimaria di ogni tabella è definita di ogni tabella è definita da chi definisce il database, per avere modo di da chi definisce il database, per avere modo di distinguere univocamente i record di una tabella distinguere univocamente i record di una tabella

Page 66: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

67

SSISSSIS

Chiave Primaria Chiave Primaria (2/3)(2/3)

Nella realtà degli studenti non esistono due Nella realtà degli studenti non esistono due studenti con la stessa matricolastudenti con la stessa matricola– Nella tabella Studenti la chiave primaria dichiarata è il numero Nella tabella Studenti la chiave primaria dichiarata è il numero

di matricoladi matricola– Ogni tentativo di inserire nella tabella il record di uno studente Ogni tentativo di inserire nella tabella il record di uno studente

che ha lo stesso valore del campo matricola di un altro già che ha lo stesso valore del campo matricola di un altro già presente nella tabella, viene impedito e causa un messaggio di presente nella tabella, viene impedito e causa un messaggio di erroreerrore

Page 67: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

68

SSISSSIS

Chiave Primaria Chiave Primaria (3/3)(3/3) Nella realtà degli Esami?Nella realtà degli Esami?

Nella realtà degli Esami non possono esistere due esami con lo stesso candidato e la stessa

materia: la chiave primaria dichiarata è la coppia di campi (materia, candidato) in alternativa un nuovo campo, codiceEsame: a volte può essere conveniente definire una proprietà fittizia, non presente nella realtà di interesse, che compia la funzione di chiave primaria (ad esempio quando la chiave reale è composta da troppi campi)

Page 68: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

69

SSISSSIS

Chiave Esterna Chiave Esterna (1/3)(1/3) Ultima nozione fondamentale è quella di Ultima nozione fondamentale è quella di

Chiave EsternaChiave Esterna di una tabella di una tabella Una chiave esterna è un campo che contiene Una chiave esterna è un campo che contiene

il valore di una chiave primaria:il valore di una chiave primaria:– Questo mette in relazione il record che contiene Questo mette in relazione il record che contiene

un certo valore per la chiave esterna con il record, un certo valore per la chiave esterna con il record, in un’altra tabella, che contiene quel valore per la in un’altra tabella, che contiene quel valore per la chiave primariachiave primaria

Page 69: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

70

SSISSSIS

Chiave Esterna Chiave Esterna (2/3)(2/3) Per i nostri scopi, in quale tabella dell’esempio deve Per i nostri scopi, in quale tabella dell’esempio deve

essere definita una chiave esterna?essere definita una chiave esterna?

Quale campo potrebbe essere chiave esterna?Quale campo potrebbe essere chiave esterna?

Nella tabella Esami

Nessuno: nessun campo della tabella ha valori nella chiave primaria della tabella Studenti

Page 70: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

71

SSISSSIS

Chiave Esterna Chiave Esterna (3/3)(3/3)

Se si definisse il campo Se si definisse il campo Candidato Candidato comecome chiave esterna, quali problemi chiave esterna, quali problemi potremmo avere?potremmo avere?

Studenti omonimi: in una ricerca, gli esami passati da studenti diversi con lo stesso nome verrebbero associati ad entrambi gli studenti!!!

Page 71: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

72

SSISSSIS

Tabella Esami correttaTabella Esami corretta

Struttura tabella:Corso: TextCandidato: NumberData: DateVoto: Number(2)Lode: Si/No

La tabella Esami deve essere definita come:

303013/02/0113/02/01179856179856FPFP

181811/02/0111/02/01171523171523LMMLMM

252515/01/0115/01/01175649175649BDBD

303015/01/0115/01/01167459167459BDBD

282812/01/0112/01/01171523171523BDBD

VotoVotoDataDataCandidatoCandidatoMateriaMateria

30 No30 No

18 No18 No

25 No25 No

30 Si30 Si

28 No28 No

Voto LodeVoto Lode

Page 72: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

73

SSISSSIS

Relazione tra tabelleRelazione tra tabelle

NomeNome MatricolaMatricola ProvinciaProvincia DataNascitaDataNascita

IsaiaIsaia 171523171523 PIPI 01/01/198001/01/1980

CorsoCorso CandidatoCandidato DataData VotoVoto

BDBD 171523171523 12/01/0112/01/01 2929

Studenti

Esami

Il campo Candidato è chiave esterna di Esami. Contiene valori della chiave primaria Matricola di Studenti. Il valore di Candidato mette in relazione il relativo record con il record dello studente che ha passato l’esame.

Page 73: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

74

SSISSSIS

Schema relazionaleSchema relazionale

EsamiStudenti

Data

VotoCandidato*

LodeCorso

DataNascita

ProvinciaNome

Matricola

Esami

esamiSuperati passatoDa

Studenti

Page 74: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

75

SSISSSIS

Ricerca dei datiRicerca dei dati Un database relazionale consente la ricerca dei Un database relazionale consente la ricerca dei

dati attraverso un particolare linguaggio di dati attraverso un particolare linguaggio di interrogazione detto SQLinterrogazione detto SQL

In SQL è possibile formulare richieste del tipo:In SQL è possibile formulare richieste del tipo:– Singola tabella:Singola tabella:

» Dammi i nomi degli studenti nati prima del 1980Dammi i nomi degli studenti nati prima del 1980» Dammi tutti gli esami passati prima del 12/31/2001Dammi tutti gli esami passati prima del 12/31/2001

– Tabelle multiple:Tabelle multiple:» Dammi tutti i nomi e i voti dei corsi che sono stati passati da Dammi tutti i nomi e i voti dei corsi che sono stati passati da

studenti di Pisastudenti di Pisa» Dammi il nome degli studenti e il numero di esami da essi Dammi il nome degli studenti e il numero di esami da essi

passati tra il 2000 e il 2001passati tra il 2000 e il 2001

Page 75: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

76

SSISSSIS

MS Access MS Access (1/2)(1/2)

Un Sistema per la Gestione di Basi di Un Sistema per la Gestione di Basi di Dati (SGBD), altrimenti detto DataBase Dati (SGBD), altrimenti detto DataBase Management System (DBMS)Management System (DBMS)

Page 76: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

77

SSISSSIS

MS Access MS Access (2/2)(2/2) Un insieme di strumenti per laUn insieme di strumenti per la

– Gestione automatica ed efficiente del database:Gestione automatica ed efficiente del database:» Definizione delle Definizione delle tabelletabelle (campi e tipi) e delle relazioni tra (campi e tipi) e delle relazioni tra

di essedi esse» QueryQuery di inserimento, cancellazione, modifica e ricerca di inserimento, cancellazione, modifica e ricerca

dei record nelle tabelledei record nelle tabelle

Definizione di applicazioni con interfacce Definizione di applicazioni con interfacce utente per la gestione del databaseutente per la gestione del database– Maschere e ReportMaschere e Report

Page 77: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

78

SSISSSIS

EsercizioEsercizio Definire un database Access che consenta la Definire un database Access che consenta la

gestione delle informazioni relative agli Agenti gestione delle informazioni relative agli Agenti dell’FBI. Di ogni agente interessa il nome, il codice e dell’FBI. Di ogni agente interessa il nome, il codice e la data di assunzione. Ogni agente lavora per un la data di assunzione. Ogni agente lavora per un dipartimento, il quale è caratterizzato da una dipartimento, il quale è caratterizzato da una specializzazione (stragi, cospirazioni, guerre, etc.). Ci specializzazione (stragi, cospirazioni, guerre, etc.). Ci interessa fare ricercheinteressa fare ricerche– sugli agenti in base a continente, stato e indirizzo dei sugli agenti in base a continente, stato e indirizzo dei

dipartimenti per cui lavorano;dipartimenti per cui lavorano;– sui dipartimenti in base alle date di assunzione degli agenti;sui dipartimenti in base alle date di assunzione degli agenti;– altro...altro...

Page 78: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

79

SSISSSIS

Definizione del databaseDefinizione del database Creazione delle tabelleCreazione delle tabelle

– Attributi e tipiAttributi e tipi Creazione delle associazioniCreazione delle associazioni

– Integrità referenzialeIntegrità referenziale– Cancellazione e modifica a cascataCancellazione e modifica a cascata– Caselle combinateCaselle combinate

Inserimento dati: rispetto dell’integrità Inserimento dati: rispetto dell’integrità referenzialereferenziale

Page 79: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

80

SSISSSIS

Definizione delle queryDefinizione delle query Selezione della tabella coinvoltaSelezione della tabella coinvolta Selezione degli attributi coinvoltiSelezione degli attributi coinvolti

– Da visualizzareDa visualizzare– Da sottoporre a vincoli (And e Or)Da sottoporre a vincoli (And e Or)

Query a più tabelleQuery a più tabelle– Concetto di Concetto di giunzionegiunzione

Una query è a tutti gli effetti una tabellaUna query è a tutti gli effetti una tabella– I record vengono calcolati dinamicamente al momento della I record vengono calcolati dinamicamente al momento della

esecuzioneesecuzione– Può essere utilizzata per effettuare altre queryPuò essere utilizzata per effettuare altre query

Page 80: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

81

SSISSSIS

Query: tipologieQuery: tipologie Query per la ricercaQuery per la ricerca

– Selezione e visualizzazione di recordSelezione e visualizzazione di record Query per il calcoloQuery per il calcolo

– Max, min, media, somma, etc.Max, min, media, somma, etc.

Page 81: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

82

SSISSSIS

Esercizio: il databaseEsercizio: il database Catena di agenzie immobiliari. Degli acquirenti ci Catena di agenzie immobiliari. Degli acquirenti ci

interessa il nome il telefono, la città in cui intendono interessa il nome il telefono, la città in cui intendono comprare, i mq desiderati e la cifra che sono disposti comprare, i mq desiderati e la cifra che sono disposti a spendere. Dei proprietari ci interessa sapere il a spendere. Dei proprietari ci interessa sapere il nome, il telefono e le case in vendita. Delle case ci nome, il telefono e le case in vendita. Delle case ci interessano i mq, il prezzo, l’indirizzo e i proprietari. interessano i mq, il prezzo, l’indirizzo e i proprietari. Delle agenzie ci interessa sapere il nome, il comune, Delle agenzie ci interessa sapere il nome, il comune, la provincia, il telefono, i clienti e i venditori.la provincia, il telefono, i clienti e i venditori.

Sappiamo che: Sappiamo che: – ogni venditore può riferirsi solo all’agenzia del comune in cui ogni venditore può riferirsi solo all’agenzia del comune in cui

vendevende– Ogni città ha una sola agenziaOgni città ha una sola agenzia

Page 82: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

83

SSISSSIS

Esercizio:le queryEsercizio:le query Trovare il nome, il telefono e i mq di chi vende a Milano una Trovare il nome, il telefono e i mq di chi vende a Milano una

casa per meno di 150.000 Eurocasa per meno di 150.000 Euro Trovare il nome, il telefono e gli Euro di chi intende acquistare Trovare il nome, il telefono e gli Euro di chi intende acquistare

una casa di 80mq a Romauna casa di 80mq a Roma Trovare il prezzo medio delle case in vendita a ParmaTrovare il prezzo medio delle case in vendita a Parma Trovare i prezzo massimo tra tutte le case in vendita a Trovare i prezzo massimo tra tutte le case in vendita a

Pontedera (PI) e Empoli (FI)Pontedera (PI) e Empoli (FI) Trovare il nome, il comune, la privincia e il numero di telefono Trovare il nome, il comune, la privincia e il numero di telefono

delle agenzie che hanno acquirenti per la provincia di Pisadelle agenzie che hanno acquirenti per la provincia di Pisa Trovare tutti i nomi e i telefoni dei venditori e degli acquirenti le Trovare tutti i nomi e i telefoni dei venditori e degli acquirenti le

cui richieste in mq e Euro hanno uno scarto di 20mq e 10.000 cui richieste in mq e Euro hanno uno scarto di 20mq e 10.000 Euro rispettivamente.Euro rispettivamente.

Page 83: 1 Basi di Dati La Progettazione. 2 Piano della lezione Problema dellarchivio dei pazienti Problema dellarchivio dei pazienti Realizzazione di una soluzione.

84

SSISSSIS

Esercizio: il databaseEsercizio: il database Ci interessa trattare i dati delle sale Ci interessa trattare i dati delle sale

cinematografiche italiani. cinematografiche italiani. – Di ogni cinema interessa sapere il nome, la città e Di ogni cinema interessa sapere il nome, la città e

le sale.le sale.– Le sale sono caratterizzate da un nome, da un film Le sale sono caratterizzate da un nome, da un film

in proiezione, dal prezzo del biglietto, data di inizio in proiezione, dal prezzo del biglietto, data di inizio e di fine proiezione del film e dal numero di posti a e di fine proiezione del film e dal numero di posti a sedere.sedere.

– [Dei film interessa sapere il titolo, il regista e l’anno [Dei film interessa sapere il titolo, il regista e l’anno di uscita.]di uscita.]