prof ing gaetano la rosa1 corso di laurea di i livello in tecnico di laboratorio biomedico prof ing...
TRANSCRIPT
Prof Ing Gaetano La Rosa 1
Corso di laurea di I livello in Tecnico di laboratorio biomedico
Prof Ing Gaetano La Rosa
www.glrstudio.comEmail [email protected]
Elaborazione delle Informazioni
a.a. 2007-08
Prof Ing Gaetano La Rosa 2
Profilo professionale del TLB
competenza informatica utile alla gestione dei sistemi informativi dei servizi, ed alla propria autoformazione;
capacita’ nella gestione dei sistemi informativi ed informatici;
capacità nella comunicazione con gli operatori professionali, con i fornitori e con gli utenti del servizio.
Prof Ing Gaetano La Rosa 3
Introduzione
i DBMS sono una componente fondamentale del sistema informatico di una grande organizzazione
Il sistema informatico è una componente fondamentale del sistema informativo
Il sistema informativo è una componente fondamentale del sistema organizzativo
Prof Ing Gaetano La Rosa 4
Sistema Organizzativo
complesso delle strutture, delle regole e delle procedure che regolano lo svolgimento delle attività
Esempio: banca – regolamento apertura c/canagrafe – procedure per la registrazione delle nascite
Prof Ing Gaetano La Rosa 5
Sistema Informativo (1)
La parte del sistema organizzativo che presiede
ai processi di: Raccolta conservazione utilizzo delle informazioni
Es: banca – registrazione prelievi su c/c, emissione estratto conto anagrafe – registrazione nascita, emiss. certificato di nascita
Prof Ing Gaetano La Rosa 6
Sistema Informativo (2)
Ogni organizzazione ha un sistema informativo
Quasi sempre, il sistema informativo è di supporto ad altri sottosistemi e va quindi analizzato nel contesto in cui è inserito
Il sistema informativo è in genere suddiviso in sottosistemi più o meno integrati.
Prof Ing Gaetano La Rosa 7
Le risorse di una organizzazione
persone denaro strutture, strumenti, materiali informazioni
• acquisizione delle informazioni • conservazione delle informazioni • elaborazione delle informazioni • distribuzione, scambio di informazioni
Funzioni di un sistema informativo
Prof Ing Gaetano La Rosa 8
Sistemi informativi e Automazione
Il concetto di “sistema informativo” è indipendente da quello di automazione:
Esistono organizzazioni la cui ragion d’essere è la gestione d’informazioni (p.e. servizi anagrafici e banche) altri che invece lo utilizzano come parte essenziale del sistema complessivo
In ‘sistemi di elaborazione’ siamo maggiormente interessati ai sistemi informativi automatizzati;
Prof Ing Gaetano La Rosa 9
Sistema Informatico
La porzione informatizzata del sistema informativo;
Collezione di applicazioni che gestiscono i dati e i flussi informativi;
In pratica, in molti casi:
sistema informativo = sistema informatico
Prof Ing Gaetano La Rosa 10
Sistema Informatico
Struttura a livelli
Organizzazione complessa (es: azienda)
Sistema organizzativo
Sistema informativo
Sistema informatico
DBMS
obiettivo dei DBMS: il trattamento dei dati per ottenere informazioni
Prof Ing Gaetano La Rosa 11
Gestione delle informazioni
Nelle attività umane, le informazioni vengono gestite (registrate e scambiate) in forme diverse:
Idee informali Linguaggio naturale Disegni, grafici, schemi Numeri e codici
e su vari supporti Memoria umana, carta, dispositivi elettronici.
Prof Ing Gaetano La Rosa 12
Gestione delle informazioni
Nei sistemi informatici, le informazioni vengono rappresentate attraverso i dati
Informazione: notizia, dato o elemento che consente di avere conoscenza più o meno esatta di fatti, situazioni, modi di essere.
Dato: ciò che è immediatamente presente alla conoscenza, prima di ogni elaborazione; in informatica elementi di informazione costituiti da simboli
che debbono essere elaborati.
Prof Ing Gaetano La Rosa 13
Dati e Informazioni
I dati devono essere interpretati per diventare informazioni (processo di conoscenza)
Esempio: 1 3 10 12 17 20 21 30
Risultati del Totogol concorso n° x del gg/mm/aaaa
1 3 10 12 17 20 21 30Quote 8pt: € 215.594,00
Prof Ing Gaetano La Rosa 14
Architettura Tradizionale dei S. I.
Applicazioni e file
Applicazione n.3Es: erogazione contr.
Applicazione n.2Es: certif. elettorali
Applicazione n.1Es: dati nascite
Disco
File A
File B
File C
assenza di integrazione assenza di integrazione ridondanzaridondanza
Prof Ing Gaetano La Rosa 15
Architettura Moderna dei S.I.
Architettura basata su DBMS
Appl. n.2
Appl. n.1
Base di Dati(dati)
DBMS(servizi)
integrazione integrazione efficienzaefficienza
Prof Ing Gaetano La Rosa 16
DataBase Management System DBMS (1)
Sistema software in grado di gestire collezioni di dati che siano (anche):
grandi (di dimensioni (molto) maggiori della memoria centrale dei sistemi di calcolo utilizzati)
persistenti (con un periodo di vita indipendente dalle singole esecuzioni dei programmi che le utilizzano)
condivise (utilizzate da applicazioni e utenti diversi)
Prof Ing Gaetano La Rosa 17
DataBase Management System DBMS (2)
Esso garantisce: affidabilità:
resistenza a malfunzionamenti hardware e software;
recupero dei dati in caso di guasti Esempio: in caso di malfunzionamento
(alimentazione, rottura del disco) i dati devono poter essere recuperati
Privatezza e sicurezza: controllo degli accessi; meccanismi di protezione dell’accesso meccanismi di autorizzazione
Esempio: l’accesso ai dati è protetto agli utenti non autorizzati; gli utenti autorizzati hanno diversi livelli di autorizzazione
Prof Ing Gaetano La Rosa 18
DataBase Management System DBMS (3)
efficienza: utilizzo efficiente delle risorse di
spazio e tempo del sistema; efficacia:
rendere produttive le attività dei suoi utilizzatori.
centralizzazione dei servizi miglioramento della produttività semplicità della scrittura di applicazioni
Prof Ing Gaetano La Rosa 19
Figure Coinvolte
Base di Dati
applicazioniapplicazioni
DBMSDBMS
utenti finaliutenti finali
amministratoriamministratori
programmatoriprogrammatoriapplicativiapplicativiutentiutenti
casualicasuali
Prof Ing Gaetano La Rosa 20
Operazioni effettuabili su un DB
immissione e cancellazione di dati, modifica di dati già introdotti, ricerca di dati attraverso criteri definiti
dall'utente ordinamento e classificazione dei dati stampa di rapporti o relazioni.
Prof Ing Gaetano La Rosa 21
Tipi di Database
Database gerarchici Database reticolari Database ad oggetti Database relazionali
Prof Ing Gaetano La Rosa 22
Database gerarchici Sviluppati negli anni ’60, ma
ancora utilizzati ai giorni nostri Sono basati su strutture ad albero
Prof Ing Gaetano La Rosa 23
Database reticolari Sviluppati all’inizio degli anni ’70 Detti anche CODASYL o a rete;
sono basati sull’uso di grafi e sono stati sviluppati successivamente al modello gerarchico
Prof Ing Gaetano La Rosa 24
Database ad oggetti Sono un’evoluzione del modello
relazionale. Sviluppati negli anni ’80 estendono
ai database il paradigma della programmazione ad oggetti
Prof Ing Gaetano La Rosa 25
Database relazionali Non solo sono i più utilizzati, ma sono anche i più
semplici perché si appoggiano ad un modo di rappresentate i dati a noi familiare: le tabelle
Oggi i principali database in circolazione sono di tipo relazionale, e questo perché praticamente tutti gli insiemi di dati che corrispondono a entità complesse organizzate come imprese, scuole, associazioni,… implicano collegamenti tra i vari dati: ai fornitori sono collegate le merci, agli alunni i corsi, ai corsi i professori, e così via.
Prof Ing Gaetano La Rosa 26
Esempi di DBMS
Commerciali, fascia alta IBM DB2 Oracle Microsoft SQL Server Sybase Informix
Commerciali, fascia bassa Microsoft Access FileMaker
Open Source MySQL (www.mysql.com) PostgreSQL (www.postgresql.org)
Prof Ing Gaetano La Rosa 27
S.I. :sistema informativoStudio di fattibilitàStudio di fattibilità
Raccolta e analisi dei requisiti
Raccolta e analisi dei requisiti
ProgettazioneProgettazione
ImplementazioneImplementazione
Validazione e collaudo
Validazione e collaudo
Prof Ing Gaetano La Rosa 28
Progettazione del SI
Studio di fattibilitàStudio di fattibilità
Raccolta e analisi dei requisiti
Raccolta e analisi dei requisiti
ProgettazioneProgettazione
ImplementazioneImplementazione
Validazione e collaudo
Validazione e collaudo
Progettazione concettuale
Progettazione concettuale
Progettazione logica
Progettazione logica
Progettazione fisica
Progettazione fisica
Prof Ing Gaetano La Rosa 29
Progettazione del SI:basi di dati relazionali
Modello relazionale
Entity Relation model
Prof Ing Gaetano La Rosa 30
Modello relazionale dei dati In un database relazionale i dati
sono organizzati in tabelle La tabella rappresenta un oggetto
base del sistema informativo
BRTALL4567 Britti Alex Via Vasca 5
LPZJJJ5678 Lopez Jennifer Via Doria 22
DNNPPPghe456 Daniele Pino Via Napoli 97
FRLRSRwer78p Fiorello Rosario Via Augusta 28
Codice fiscale Cognome Nome Indirizzo
Prof Ing Gaetano La Rosa 31
Una tabella è caratterizzata da: tante righe quante sono le possibili istanze o esemplari
dell'oggetto tante colonne quanti sono gli attributi che caratterizzano
l'oggetto da una chiave che e’ data dall’attributo (o attributi) che
consentono di identificare in modo univoco un esemplare dell’oggetto (ovvero una riga della tabella)
BRTALL4567 Britti Alex Via Vasca 5
LPZJJJ5678 Lopez Jennifer Via Doria 22
DNNPPPghe456 Daniele Pino Via Napoli 97
FRLRSRwer78p Fiorello Rosario Via Augusta 28
Codice fiscale Cognome Nome IndirizzoCampo chiave
Prof Ing Gaetano La Rosa 32
Modello relazionale dei dati
Una tabella si chiama anche relazione
Si definisce Schema di una relazione il nome della relazione seguito dai nomi dei suoi attributi CITTADINO (CF, Cognome, Nome, Indirizzo) PAZIENTE(CF,Cognome, Nome, dataingresso)
Si definisce Istanza di una relazione l’insieme delle sue righe
Prof Ing Gaetano La Rosa 33
Modello relazionale dei dati Possiamo ora definire l’indipendenza logica offerta dai DBMS:
E’ possibile modificare il modo in cui gli utenti esterni interagiscono con il database senza modificare lo schema logico dei dati, e viceversa.
ES. Ad una particolare classe di utenti interessa accedere solo al cognome, nome ed indirizzo e non al CF.
BRTALL4567 Britti Alex Via Vasca 5
LPZJJJ5678 Lopez Jennifer Via Doria 22
DNNPPPghe456 Daniele Pino Via Napoli 97
FRLRSRwer78p Fiorello Rosario Via Augusta 28
Codice fiscale Cognome Nome IndirizzoRelazioneCittadino
Prof Ing Gaetano La Rosa 34
Vista del database Si definisce “Vista del database” la
descrizione di una parte di esso
BRTALL4567 Britti Alex Via Vasca 5
LPZJJJ5678 Lopez Jennifer Via Doria 22
DNNPPPghe456 Daniele Pino Via Napoli 97
FRLRSRwer78p Fiorello Rosario Via Augusta 28
Codice fiscale Cognome Nome Indirizzo
RelazioneCittadino
Vista
Prof Ing Gaetano La Rosa 35
Ricerca delle informazioni Nei database relazionali la ricerca
delle informazioni avviene: Attingendo l’informazione da
singole tabelle Navigando da una tabella all’altra
mediante attributi comuni
0678-4567 Rossi Paolo Via Vasca 5
0945-34578 Lopez Jennifer Via Doria 22
0514-345790 Rossi Paolo Via Napoli 97
0987-12463 Fiorello Rosario Via Augusta 28
Telefono Cognome Nome Indirizzo
RelazioneAbbonati
RSSPLL4567
Rossi Paolo Via Vasca 5
LPZJJJ5678 Lopez Jennifer Via Doria 22
RSSPPLghe456
Rossi Paolo Via Napoli 97
FRLRSRwer78p
Fiorello Rosario Via Augusta 28
Codice fiscale Cognome Nome Indirizzo
RelazioneCittadino
Prof Ing Gaetano La Rosa 36
Modello logico e concettuale
Modelli logici Usati dal DBMS per
l’organizzazione dei dati Indipendenti dalla
strutture fisiche
Modelli concettuali Usati dai progettisti per
rappresentare i dati in modo indipendente dal particolare DBMS
GerarchicoReticolareRelazionaleAd oggetti
Entity-Relationship Model
Prof Ing Gaetano La Rosa 37
Come si ricavano le tabelle?
Immaginiamo che un collezionista di opere d’arte voglia realizzare una piccola base di dati che tenga traccia delle informazioni relative alle opere possedute.
Incominciamo a modellare i requisiti di questa base di dati utilizzando l’entity-relationship model E/R (modello entità relazioni)
Prof Ing Gaetano La Rosa 38
Modello E/R
Questo modello esprime che un pittore dipinge molti quadri, ma un quadro è dipinto da un solo pittore
Analogamente, un quadro può essere esposto in una sola galleria (in un dato istante di tempo), e una galleria può esporre molti quadri
Pittore Quadro
Galleria
dipinge
Esposto
Entità relazione
1 N
1
N
Prof Ing Gaetano La Rosa 39
Modello E/R
Aggiungiamo gli attributi di ogni entità
Pittore Quadro
Galleria
dipinge
Esposto
1 N
1
NID Pittore
Nome
ID Quadro
Corrente recapito titolo data
valore
Nome galleria
Indirizzo
Contatto gallerista
Nazionalità
Prof Ing Gaetano La Rosa 40
Modello E/R
Consideriamo la prima parte del modello
Pittore Quadro
Galleria
dipinge
Esposto
1 N
1
NID Pittore
Nome
ID Quadro
Corrente recapito titolo data
valore
Nome galleria
Indirizzo
Contatto gallerista
Nazionalità
Prof Ing Gaetano La Rosa 41
Modello E/R
Avremmo potuto pensare ad un’unica tabella, ad esempio quadro.
Quadro
Nome pittore
ID Quadro
Corrente Recapito pittore
Titolo opera data
valore Nazion.
Prof Ing Gaetano La Rosa 42
Modello E/R: esempio di progettazione ridondante
ID Quadro
Nome pittore Nazion. Corrente Recapito pittore
Titolo opera
data valore
11 raffaello it Rinasc. - Madonna ? 250.000
23 Dechirico it surrealis Piazza 1972 150.000
43 Klee Ge Astratt - Layers 1960 300.000
25 Corpora It Astratt - Luce 1988 5.000
17 Dechirico it surrealis - Folla 1974 25.000
32 Fontana It Astratt - Spazio 1985 250.000
15 Monet FR Impress. - Ponti 1925 400.000
27 Dechirico it surrealis - Incontro 1963 320.000
Prof Ing Gaetano La Rosa 43
Creare tabelle con ridondanze è uno svantaggio perché: Spreco di spazio
Possibilità di introdurre errori nell’inserimento di nuovi dati, con conseguente perdita di informazione quando si effettuano interrogazioni nella base di dati
Prof Ing Gaetano La Rosa 44
Esempio:
Nell’inserire la riga n. 5 scrivo “sureal” invece di “surreal”
Se chiedo di fornire una lista dei pittori surrealisti di cui possiedo quadri, Dechirico sarà presente
Ma se chiedo la lista di tutti i quadri surrealisti che possiedo, il quadro “Folla” non verrà restituito
Prof Ing Gaetano La Rosa 45
Quindi:
Quando nell’entity model si è in presenza di una relazione 1-N, se costruiamo un’unica tabella contenente le due entità avremo gruppi ripetuti.
La decisione se procedere a costruire due tabelle o meno dipende da quanti attributi occorre tenere conto per l’entità dal lato 1 della relazione
Infatti, se nel nostro esempio bastasse ricordare solo il nome del pittore, sarebbe giusto costruire una sola tabella “Quadro”.
Prof Ing Gaetano La Rosa 46
Dal modello concettuale al modello logico
Per passare al modello logico è necessario eliminare la relazione “dipinge” ricopiando la chiave della tabella Pittore (ovvero dell’entità con cardinalità 1) fra gli attributi della tabella quadro. Questo manterrà il legame logico fra i dati e permetterà di accedere alle informazioni che ci occorrono anche se queste sono memorizzate in tabelle diverse
Pittore Quadrodipinge1 N
ID Pittore
Nome
ID Quadro
Corrente recapito titolo data
valore
Nazionalità
ID Pittore
Prof Ing Gaetano La Rosa 47
Dal modello concettuale al modello logico
Questo il risultato
Pittore Quadro
ID Pittore
Nome
ID Quadro
Corrente recapito titolo data
valore
Nazionalità
ID PittoreChiave esterna
Chiave primaria
Prof Ing Gaetano La Rosa 48
RisultatoID Quadro
ID pittore
Titolo opera data valore
11 1 Madonna ? 250.000
23 2 Piazza 1972 150.000
43 3 Layers 1960 300.000
25 4 Luce 1988 5.000
17 2 Folla 1974 25.000
32 6 Spazio 1985 250.000
15 7 Ponti 1925 400.000
27 2 Incontro 1963 320.000
ID Pittore
Nome pittore Nazion.
Corrente Recapito pittore
1 raffaello it Rinasc. -
2 Dechirico it surrealis
3 Klee Ge Astratt -
4 Corpora It Astratt -
6 Fontana It Astratt -
7 Monet FR Impress. -
Prof Ing Gaetano La Rosa 49
Continuiamo…
Analogo ragionamento per l’altra parte dell’entity model.
Pittore Quadro
Galleria
dipinge
Esposto
1 N
1
NID Pittore
Nome
ID Quadro
Corrente recapito titolo data
valore
Nome galleria
Indirizzo
Contatto gallerista
Nazionalità
Prof Ing Gaetano La Rosa 50
Eliminiamo la relazione 1-N
Copiamo la chiave della entità Galleria fra gli attributi dell’entità Quadro.
Pittore Quadro
Galleria
dipinge
Esposto
1 N
1
NID Pittore
Nome
ID Quadro
Corrente recapito titolo data
valore
Nome galleria
Indirizzo
Contatto gallerista
Nazionalità
Prof Ing Gaetano La Rosa 51
Eliminiamo la relazione 1-N
Alla fine la struttura risultante è….
Pittore Quadro
Galleria
dipinge1 N
ID Pittore
Nome
ID Quadro
Corrente recapito titolo data
valore
Nome galleria
Indirizzo
Contatto gallerista
Nazionalità Nome galleria
Prof Ing Gaetano La Rosa 52
Struttura delle tabelleID Quadro
ID pittore
Titolo opera
data valore Id galleria
11 1 Madonna
? 250.000 -
23 2 Piazza 1972 150.000 1
43 3 Layers 1960 300.000 -
25 4 Luce 1988 5.000 -
17 2 Folla 1974 25.000 1
32 6 Spazio 1985 250.000 2
15 7 Ponti 1925 400.000 -
27 2 Incontro 1963 320.000 -
ID Pittore
Nome pittore Nazion.
Corrente Recapito pittore
1 raffaello it Rinasc. -
2 Dechirico it surrealis
3 Klee Ge Astratt -
4 Corpora It Astratt -
6 Fontana It Astratt -
7 Monet FR Impress. -
ID Galleria
Nome Indirizzo Gallerista
1 GIRALDI Firenze, via MArco
2 ARTECLUB
Roma, via.. Enrico
Prof Ing Gaetano La Rosa 53
Modello E/R relazione N-N
Se siamo interessati a conoscere la storia delle esposizioni di ciascun quadro nelle gallerie la relazione Esposto si trasforma da 1-N a N-N
Pittore Quadro
Galleria
dipinge
Esposto
1 N
N
NID Pittore
Nome
ID Quadro
Corrente recapito titolo data
valore
Nome galleria
Indirizzo
Contatto gallerista
Nazionalità
Data inizio
Data fine esposizione
Prof Ing Gaetano La Rosa 54
Modello E/R relazione N-N In questo caso nasce una
nuova tabella, che chiameremo “ESPOSIZIONE”La quale terrà conto delle nostre esigenze informative Quadro
Galleria
Esposto
N
N
ID Quadro
titolo data valore
Nome galleria
Indirizzo
Contatto gallerista
Data inizio
Data fine esposizione
Prof Ing Gaetano La Rosa 55
Relazioni N -N Logicamente è come se la
relazione N-N si trasformasse in due relazioni 1 –N
Le relazioni si eliminano copiando le chiavi ID Quadro e ID Galleria fra gli attributi di esposizione
Quadro
Galleria
Esposizione
N
N
ID Quadro
Nome galleria
Data inizio
Data fine esposizione
Si trova in
organizza
1
1
Prof Ing Gaetano La Rosa 56
Relazioni N -N questo il risultato
Quadro
Galleria
Esposizione
ID Quadro
Nome galleria
Data inizio
Data fine esposizione
ID Quadro
Nome galleria
Prof Ing Gaetano La Rosa 57
Relazioni N -N Con questa struttura dati
possiamo tenere traccia di tutte le volte che un particolare quadro è stato esposto
Quadro
Galleria
Esposizione
ID Quadro
Nome galleria
Data inizio
Data fine esposizione
ID Quadro
Nome galleria
Prof Ing Gaetano La Rosa 58
Il problema della chiave In genere le tabelle che nascono dalle relazioni N-N
hanno come chiave la coppia delle chiavi importate.
Nel nostro caso questo è vero se ammettiamo che ciascun quadro possa essere esposto solo una volta in una galleria
Se ciò non è vero avremmo bisogno di 3 attributi per identificare univocamente l’esposizione
EsposizioneData inizio
Data fine esposizione
ID Quadro
Nome galleria
EsposizioneData inizio
Data fine esposizione
ID Quadro
Nome galleria
Prof Ing Gaetano La Rosa 59
Il problema della chiave In pratica si preferisce
aggiungere un ulteriore attributo che funge da chiave primaria.
Ciò aumenta le prestazioni del database
EsposizioneData inizio
Data fine esposizione
ID Quadro
Nome galleria
ID Esposizione
Prof Ing Gaetano La Rosa 60
Modello E/R relazioni 1-1
Il criterio che si segue in questo caso è quello di copiare la chiave laddove essa è consultata più di frequente
In genere si hanno due tabelle distinte se la relazione è opzionale
Direzione Repartodirige1 1
telefono direttore
Nome reparto
Inizio incarico telefono Indirizzo
Nome direttore
Nome direttore
Prof Ing Gaetano La Rosa 61
Relazioni 1-1
Il criterio che si segue in questo caso è quello di copiare la chiave laddove essa è consultata più di frequente
In genere si hanno due tabelle distinte se la relazione è opzionale
Direzione Repartodirige1 1
telefono direttore
Nome reparto
Inizio incarico telefono Indirizzo
Nome direttore
Nome direttore
Prof Ing Gaetano La Rosa 62
Vincoli di integrità
Esistono diverse classi di vincoli sulle tabelle
I vincoli possono riguardare gli attributi e le chiavi
Un tipo importante di vincolo è l’integrità referenziale: Le chiavi esterne in una tabella devono
assumere o un valore nullo oppure un valore che coincide con un valore assunto dalla chiave primaria nella tabella collegata
Prof Ing Gaetano La Rosa 63
Integrità referenziale
l’integrità referenziale ha lo scopo di evitare che una chiave esterna assuma valori non validi
In particolare si impedisce la cancellazione di una riga in una tabella se il valore della chiave primaria compare come chiave secondaria in un’altra tabella.
Prof Ing Gaetano La Rosa 64
Integrità referenziale: esempio
ID Quadro
ID pittore
Titolo opera
data valore Id galleria
11 1 Madonna
? 250.000 -
23 2 Piazza 1972 150.000 1
43 3 Layers 1960 300.000 -
25 4 Luce 1988 5.000 -
17 2 Folla 1974 25.000 1
32 6 Spazio 1985 250.000 2
15 7 Ponti 1925 400.000 -
27 2 Incontro 1963 320.000 -
ID Pittore
Nome pittore Nazion.
Corrente Recapito pittore
1 raffaello it Rinasc. -
2 Dechirico it surrealis
3 Klee Ge Astratt -
4 Corpora It Astratt -
6 Fontana It Astratt -
7 Monet FR Impress. -
Se cancello il rec 6 questo valore è invalido !
Prof Ing Gaetano La Rosa 65
Un esempio di DBMS: ACCESS
Prof Ing Gaetano La Rosa 66
Gli elementi del DB Access
Tabelle Maschere Query Report
Prof Ing Gaetano La Rosa 67
Tabelle in Access Access è un RDBMS Le informazioni
sono raggruppate in tabelle Le tabelle sono rappresentate mediante
griglie suddivise in righe e colonne: Le colonne sono composte da campi Le righe sono chiamate record
La prima riga di una tabella è detta intestazione e contiene il nome dei campi
Prof Ing Gaetano La Rosa 68
Esempio di TabellaCognome Nome Indirizzo Città
Rossi Mario Via Tripoli, 12 Roma
Verdi Antonio Piazza Mazzini Macerata
Bianchi Paolo Via Liguria, 23 Ancona
Moretti Luca Via Napoli, 56 Macerata
Marconi Andrea Via Roma, 88 Rimini
Intestazione
Record
Campo
Prof Ing Gaetano La Rosa 69
Tabella:esempio con Access
Si può quindi dire che una tabella è formata da:
RECORD i quali sono costituiti da CAMPI
Prof Ing Gaetano La Rosa 70
Chiave primaria Definizione:
La chiave primaria è un campo che identifica in modo univoco i record (righe) della tabella.
Esempi: Un codice fiscale consente di identificare
in modo univoco la persona: non esistono due codici fiscali identici
Il numero di telefono è unico nella rubrica Il codice ISBN di un libro può essere
utilizzato come chiave primaria
Prof Ing Gaetano La Rosa 71
Chiave primaria La chiave primaria è importante perché
la regola fondamentale per stabilire relazioni tra tabelle è che il campo di collegamento non deve avere ripetizioni, ossia ogni record deve potere essere identificato in maniera univoca. Il campo che permette l'identificazione di ogni record è detto "chiave primaria" e deve essere comune alle tabelle che si intende correlare.
Per ogni tabella deve essere indicato quale campo funge da chiave primaria.
Prof Ing Gaetano La Rosa 72
Le relazioni Oltre che memorizzare delle informazioni, un
database è anche in grado di memorizzare le eventuali relazioni che possono esistere tra i dati.
Molto spesso infatti un database non è formato da una sola serie di informazioni, anzi è probabile che il complesso informativo che viene gestito sia composto da diversi tipi di informazione collegati tra
loro.
Prof Ing Gaetano La Rosa 73
Le relazioniSi possono stabilire tre tipi di relazione: uno a uno: si tratta di relazioni tra elementi che
hanno una corrispondenza univoca: ad un elemento di una tabella ne corrisponde uno soltanto in un'altra e viceversa;
uno a molti: sono relazioni che si stabiliscono tra un record di una tabella e più records di un'altra tabella, ma non il contrario;
molti a molti: un record può essere relazionato a più di un record di un'altra tabella e viceversa; questo tipo di relazione è normalmente definita tramite una terza tabella che costituisce un "ponte" tra le due da relazionare.
Prof Ing Gaetano La Rosa 74
Le relazioni in Access
Prof Ing Gaetano La Rosa 75
Le maschere In una tabella i dati possono essere
inseriti: considerando la tabella come se
fosse un foglio tipo Excel
oppure: utilizzando le maschere (di
inserimento)
Prof Ing Gaetano La Rosa 76
Le maschere L’inserimento dei dati può essere facilitato
con la creazione di maschere. Le maschere sono sono utili anche per la
visualizzazione ordinata del contenuto delle tabelle.
Nelle maschere si possono introdurre anche elementi grafici e i campi possono essere formattati secondo stili diversi.
Prof Ing Gaetano La Rosa 77
Le maschere: esempio
Prof Ing Gaetano La Rosa 78
Le Query Una query è uno strumento che
consente di effettuare interrogazioni sui contenuti delle tabelle e anche di eseguire specifiche azioni sui dati.
Prof Ing Gaetano La Rosa 79
L’SQL E’ un linguaggio utilizzato per interagire con i database
relazionali SQL = Structured Query Language (linguaggio
di interrogazione strutturato) È universalmente accettato dai produttori di sistemi per
database Microsoft Access, Microsoft SQL server Oracle IBM DB2
Può essere inglobato in linguaggi di programmazione tradizionali come C, C++, Java
È in grado di effettuare le diverse operazioni per l’interazione con un database: interrogazione, inserimento di nuovi dati, modifica di dati esistenti, eliminazione di dati esistenti
Prof Ing Gaetano La Rosa 80
I report I report consentono di visualizzare
in anteprima o stampare i dati secondo uno specifico formato.
Esempi: Etichette postali Elenchi Buste Lettere tipo Fatture Schede di libri
Prof Ing Gaetano La Rosa 81
I report Un report consente di visualizzare i
dati memorizzati in tabelle o query del DB
Tale visualizzazione non ha lo scopo di consentire inserimenti o modifiche, ma di PRESENTARE i dati in un formato efficace su carta o su video
Prof Ing Gaetano La Rosa 82
I report
I report visualizzano efficacemente i risultati di una o più query o i dati di una o più tabelle