Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
vuoi
o PayPal
tutte le volte che vuoi
A. LIVELLO INTERNO
Considera la base di dati come un insieme di registrazioni in memoria di massa, in particolare
descrive la distribuzione dei dati sui vari supporti e le modalità di memorizzazione dei dati.
La gestione di questo livello è a carico di chi amministra il DBMS e non degli utenti che possono
concentrarsi su aspetti di più alto livello per lo sviluppo delle loro applicazioni.
B. LIVELLO LOGICO o CONCETTUALE
Presenta i dati in modo da evidenziare la loro struttura logica, cioè l'informazione posseduta da
ciascun dato e come i dati si collegano tra di loro. È detto anche livello globale perché vi vengono
descritti tutti i dati della base di dati.
C. LIVELLO DELLE VISTE o ESTERNO
È il livello di massima astrazione, presenta i dati così come vogliono (o possono) essere visti da una
particolare classe di utenti. Vi sono tante diverse rappresentazioni, ciascuna associata ad un
particolare utilizzatore. Pertanto, è possibile associare ad uno schema logico più schemi esterni.
Utilità delle viste:
• Una ristrutturazione dello schema integrato può, in alcuni casi, essere opportunamente
mascherata facendo uso di viste
• Mediante le viste è possibile regolare meglio il controllo degli accessi al database (es.
mascherando dati riservati)
• Le viste possono essere usate per calcolare dinamicamente nuovi dati a partire da quelli
memorizzati nel database, senza per questo introdurre ridondanza.
Fa in modo che l’utente veda ciò a cui è interessato senza che venga modificata la base dei dati,
vengono semplicemente oscurati dei dati non di interesse dell’utente.
I tre livelli di rappresentazione consentono di introdurre i concetti di indipendenza fisica e logica dei
dati:
• Indipendenza fisica: consiste nella possibilità di ridefinire il livello fisico senza modificare il
livello logico, e quindi senza alterare i programmi degli utenti.
• Indipendenza logica: consiste nella possibilità di definire nuovi schemi esterni o estendere lo
schema logico senza alterare gli schemi esterni preesistenti.
I linguaggi di un DBMS
Un DBMS mette a disposizione diversi linguaggi per interagire con le basi di dati. Il livello di astrazione
di tali linguaggi dipende fortemente dal modello dei dati cui ci si riferisce.
Una comune distinzione classifica i linguaggi sulla base delle funzioni svolte (si pongono su livelli di
astrazione diversi):
- DDL (Data Definition Language): serve per definire gli schemi (logici, esterni, interni).
- DML (Data Manipulation Language): serve per interrogare e modificare le istanze delle base di
dati.
- DCL (Data Control Language): include comandi di vario tipo, ad es. per il controllo degli
accessi.
Utenti di un DBMS
Rispetto alle modalità di interazione con il DBMS possiamo raggruppare gli utenti in tre categorie
principali:
1. Gli utenti finali: possono accedere alla base di dati attraverso i comandi di un linguaggio di
interrogazione (query language), oppure, per utenti finali ancora meno esperti attraverso
interfacce software, che presentano sul video il menu o le icone.
2. Il progettista/programmatore: progetta applicazioni che interagiscono con la base di dati.
3. Il sistemista/amministratore: ha la responsabilità di gestire il database (implementa il
modello logico del database nel sistema di elaborazione sui supporti fisici delle memorie di
massa).
Modellizzazione dei dati
I dati possono essere organizzati, e quindi analizzati, utilizzando «modelli» diversi.
Un modello dei dati è definito come una collezione di concetti atti a rappresentare la realtà.
1. MODELLO ESTERNO
Si parte da un problema pratico da cui devo ricavare dati, che devono essere strutturati, data la
struttura dati poi la implemento col DTMG. L’utente del sistema informativo è principalmente
interessato ai dati associati al suo specifico interesse corrente (es. dati amministrativi di un paziente,
dati clinici, ecc). L’utente usa il computer per il data entry, per il data presentation e per il data
processing.
Le varie viste di dati a cui gli utenti sono interessati definiscono un modello di dati esterno, ovvero un
modello che offre una visione esterna dei dati.
2. MODELLO CONCETTUALE
Modelli di dati dotati di un gran numero di costrutti, che mettono in evidenza i concetti presenti in una
base di dati, piuttosto che la struttura con cui tali concetti possono essere rappresentati nella
memoria del calcolatore.
Il più famoso modello concettuale dei dati è il modello entità-relazione.
a. MODELLO ENTITÀ-RELAZIONE
[Relazione = associazione tra entità], o MODELLO ENTITÀ-ASSOCIAZIONE
I dati nei computer possono avere differenti proprietà (es. dati identificativi, dati di
laboratorio, dati di sistemi diagnostici, ecc…).
Gruppi di dati che hanno proprietà simili sono detti entità.
▪ Esempi specifici di entità sono chiamati istanze.
▪
* Entità: insieme di oggetti della realtà di interesse che possiedono caratteristiche
comuni e che hanno un’esistenza autonoma. Ogni entità è descritta da alcune proprietà
dette attributi. Ogni entità è descritta da elementi tutti con stesse proprietà (entità)
Un attributo è una caratteristica comune a tutte le istanze di una particolare entità. ES:
nome, sesso, indirizzo, ID, ecc.
Un attributo ha un dominio di valori (Es: il sesso può essere M o F).
Attributo composto: quando più identificatori creano un attributo tipo l’indirizzo, il
numero, la via, il CAP formano tutti l’attributo composto
Il dominio dell’attributo è l’insieme di valori possibili per quell’attributo.
Un attributo o una combinazione di attributi che identifica univocamente una e soltanto
una istanza di una entità è chiamato chiave primaria o identificatore. ES: la matricola.
Perché il nome può appartenere e a più persone, mentre la matricola identifica un’unica
persona.
Se voglio usare nome e cognome insieme ho un identificatore composto. Tra
identificatore composto (nome e cognome) e chiave primaria (matricola) scelgo la
chiave primaria perché univoco, ma se nel caso in cui l’identificatore composto mi dà la
garanzia che quello sia sempre univoco posso utilizzare tutti e due.
Le entità di dati sono spesso in relazione tra loro (Es: un test di laboratorio è in
relazione con un campione di sangue di un paziente con un determinato identificativo).
Una relazione è una naturale associazione tra due o più entità.
Ogni legame è una istanza di un certo tipo di relazione.
Tali relazioni sono descritte mediante i cosiddetti entity- relation diagrams (ERD).
EDR è uno strumento di modellizzazione dei dati che permette l’organizzazione dei dati
di un progetto in entità e definisce le relazioni fra di esse.
Per realizzare gli EDR, sono disponibili tools grafici che fanno uso dei seguenti simboli:
Si definisce grado di una relazione il numero di entità che sono coinvolte in una
relazione (= numero di “rami” della Relazione):
Relazione binaria: grado = 2
▪ Relazione ternaria: grado = 3
▪ Relazione n-aria: grado = n
▪
Le relazioni possono coinvolgere anche entità appartenenti allo stesso insieme di entità
(relazioni ricorsive).
Nelle relazioni dove una stessa entità è coinvolta più volte è necessario aggiungere la
specifica del “ruolo” che l’entità gioca nella relazione.
In uno schema ER sono presenti dei vincoli di integrità.
Un VINCOLO DI INTEGRITÀ è una regola che si esprime sullo schema ma che specifica
una condizione che deve valere per ogni istanza dello schema.
I vincoli di integrità nel modello ER:
Vincoli di cardinalità sulle relazioni (e vincoli di partecipazione)
▪ Vincoli di cardinalità sugli attributi
▪ Identificatori delle entità
▪ Generalizzazioni
▪
i. Vincolo di cardinalità sulle relazioni
La cardinalità di un tipo di relazione è la coppia di numeri (m, M) che specificano il
numero minimo e massimo di entità che possono partecipare ad un’istanza di quella
relazione.
Sono dei vincoli “di progetto”, derivanti dall’analisi della realtà che si vuole interpretare
• m=0: la partecipazione alla relazione per questa entità è opzionale
• M=1: per entrambi i tipi di entità coinvolti nella relazione (relazione 1 a 1)
• M=N > 1 per un’entità e M=1 per l’altra (relazione 1 a molti)
• M=N per entrambe le entità (relazione molti a molti)
Relazione 1:N
Un libro può essere scritto da più autori, un autore può aver scritto più di un libro.
Istanza data da coppie di valori, primo valore minimo, secondo è il massimo.
Relazione 1:1
Un impiegato può dirigere al più un progetto mentre un progetto è diretto da un
impiegato.
ii. Vincolo di partecipazione
Il vincolo di partecipazione (o vincolo di cardinalità minima) specifica se l'esistenza di
una entità dipende dal suo essere correlata ad un'altra entità mediante una relazione.
Partecipazione Obbligatoria (m=1)
▪ la partecipazione di impiegato a LAVORA PER è obbligatoria perché i requisiti
asseriscono che ogni impiegato deve appartenere ad un reparto.
Partecipazione Opzionale (m=0)
▪ la partecipazione dell’entità impiegato a DIRIGE è opzionale
iii. Vincolo di cardinalità sugli attributi
Per ogni attributo posso avere che per ogni istanza può essere associato a un valore o
più attributi.
Classificazione Attributi:
• Opzionali: se la cardinalità minima è 0 (es. n. patente)
• Monovalore: se la cardinalità massima è 1 (es. cod_fiscale)
• Multivalore: se la cardinalità massima è n (es. telefono)
iv. Identificatori
Un identificatore ha lo scopo di permettere l’individuazione univoca delle istanze di
un’entità (E).
• Identificatore interno: se si usano uno o più attributi di E.
• Identificatore esterno: si usano altre (una o più) entità, collegate a E da
associazioni, più eventuali attributi di E.
Se il numero di elementi (attributi o entità) che costituiscono l’identificatore è pari a 1 si
parla di identificatore semplice altrimenti di identificatore composto.
Ad esempio: la matricola ti identifica solo nell’università che frequenti; quindi, devo
sapere anche l’ambito in cui l’attributo è identificato.
Ogni entità deve avere al