Lezione 3 – Basi di Dati
Base di Dati
 Una Base di Dati (o database) è una collezione di dati,
utilizzati per rappresentare le informazioni
 Un DBMS è un insieme di programmi che permettono
agli utenti di creare e mantenere una base di dati
 Base di Dati = dati + DBMS
Fasi Creazione Software
 Analisi
 Progettazione
 Sviluppo
 Testing
Modellazione Concettuale
 Uno strumento per esprimere schemi concettuali sono
i diagrammi Entità-Relazione
 Modello E-R (Entity - Relationship)
Elementi Diagramma E-R
 Nei diagrammi E/R ci sono 3 elementi:
 Entità
 Relazioni
 Attributi
Esempio Entità
Matricola
Via
Cognome
Studente
Numero
Indirizzo
Citta
Nome
Esempio di Entità e Relazione
Dati ed Entità
 Per mantenere le informazioni, le Entità vengono
rappresentate in forma tabellare
Codice
Denominazion
e
NumeroPost
i
Reparto
Tabella Reparto
Codice
Denominazione
NumeroPosti
1c12a
Cardiologia
250
0m1v
Ortopedia
300
b61c1
Pediatria
280
Tabella Dipendenti
Matricola
Cognome
Nome
Salario
Mansione
001
Rossi
Antonio
40000
Medico
002
Verdi
Giuseppe
30000
Infermiere
003
Giallo
Mario
28000
Amministrativ
o
Record o Tuple
 Una tabella è fatta da :
 Righe
 Colonne
 Una intera riga di dati di una tabella viene
denominata:
 Tupla o Record (evidenziata)
Codice
Denominazione
NumeroPosti
1c12a
Cardiologia
250
0m1v
Ortopedia
300
b61c1
Pediatria
280
Caso Particolare
 Se due medici sono omonimi???
 Come facciamo a distinguerli???
 Es. Dobbiamo memorizzare i dati di
 Antonio Rossi (chirurgo)
 Antonio Rossi (ortopedico)
Tabella Dipendenti
Matricola
Cognome
Nome
Salario
Mansione
001
Rossi
Antonio
40000
Medico
002
Verdi
Giuseppe
30000
Infermiere
003
Giallo
Mario
28000
Amministrativ
o
005
Rossi
Antonio
40000
Medico
Campo Chiave
 Occorre prevedere uno o più campi che
contraddistunguono i record in maniera univoca
 La chiave garantisce l'identificazione di ogni riga, e per
questo deve avere:
 univocità : non debbono poter esistere due righe con gli
stessi valori per l'attributo o gli attributi assunti come
chiave
 minimalità : l'insieme degli attributi chiave non può
essere ridotto neppure di uno, senza che la chiave perda
la sua univocità
Tabella Dipendenti
Matricola
Cognome
Nome
Salario
Mansione
001
Rossi
Antonio
40000
Medico
002
Verdi
Giuseppe
30000
Infermiere
003
Giallo
Mario
28000
Amministrativ
o
005
Rossi
Antonio
40000
Medico
Campo Chiave
Esercizio
 Si vuole costruire una base dati per un'azienda sanitaria
locale, tenendo traccia delle seguenti informazioni:
 Gli ospedali sono caratterizzati da un codice identificativo,
dal nome e dall'indirizzo
 I dipendenti di ciascun ospedale sono caratterizzati dalla
matricola (univoca all'interno dell'ospedale), dal cognome,
dal nome, dalla data di nascita, dall'indirizzo e dal numero di
figli a carico.
 I dipendenti sono suddivisi in medici (di cui si conosce
l'elenco delle specialità conseguite), dagli impiegati
amministrativi (di cui si conosce la mansione) e dagli
infermieri
Esercizio
 L’ospedale è suddiviso in reparti, caratterizzati da un
codice, un nome, il numero di posti letto disponibili.
 Per ogni reparto, si conosce inoltre il medico che ne è il
primario ed i dipendenti che vi lavorano
 Ciascuno reparto può gestire delle sale operatorie di cui
e' noto un codice identificativo, il nome ed il numero di
tavoli operatori disponibili
Analisi del Testo
 Ospedale: codice, nome, indirizzo
 Reparti: codice, nome,posti letto
 Sale Operatorie: codice, nome, numero di tavoli
 Dipendenti: numero di matricola, nome, cognome,
data di nascita, indirizzo
 Medico: specializzazioni
 Impiegati: mansione
 Infermieri
Diagramma E-R
Tabella Ospedali
CodOsp
Nome
Indirizzo
Tabella Reparti
CodR
Nome
NumeroPostiLetto
Tabella SaleOperatorie
CodS
Nome
NumeroTavoli
Tipi di dati
 Ogni DBMS presenta tipi di dati diversi
 I dati che tratteremo sono:
 Stringhe alfanumeriche
 Numeri
 Valori booleani
 Date
Esercizio
 Si vuole rappresentare la base di dati della maternità di
un ospedale.
 Per ogni madre si conosce il nome, l’età, il tipo di parto
effettuato (cesareo o naturale), il numero di letto e di
stanza, eventuali malattie.
 Per ogni bambino si conosce il nome, la madre, il
numero di lettino, la dieta (quantità di latte al giorno).
Inoltre si conoscono i turni del personale, che si divide
in medici, ostetriche ed infermieri.
Esercizio
 Di ogni componente del personale si conoscono il
nome, il numero di matricola, il turno (per ogni giorno
della settimana le ore di presenza e le stanze a cui è
assegnato).
 Per i medici si conoscono i pazienti di cui si occupano,
che possono anche essere indipendenti dalle stanze
che gli sono assegnate.
 Per ogni ostetrica si conoscono le madri assistite
durante il parto.
 I medici possono essere ginecologi o pediatri
Analisi del Testo
 Madre: nome, età, tipo di parto (cesareo o naturale),
eventuali malattie,numero di letto, numero di stanza
 Bambino: nome, madre, dieta, numero di lettino
 Turno: per ogni componente del personale è nota, per
ogni giorno della settimana, la stanza assegnata ed il
numero di ore di presenza
Analisi del Testo
 Personale: nome, numero di matricola, turno
 Medico:


Ginecologo: nome della madre assistita
Pediatra: nome del bambino assistito
 Ostetrica: nome della madre assistita durante il parto
 Infermiere
Diagramma E - R
Scarica

Lezione3 DB