Estratto del documento

Caratteristiche e utilizzo del modello ER nell'ambito della progettazione delle basi di dati

Il modello E-R viene utilizzato nell'ambito della progettazione concettuale per la produzione di un modello concettuale. Attraverso una forma grafica, si descrivono i dati da rappresentare mediante relazioni fra oggetti. Il modello ha impatto sia a livello intensionale (intestazione delle tabelle) sia a livello estensionale (le tuple).

Fondamentali sono: le entità ossia una classe di oggetti che sono di interesse per l'applicazione, hanno esistenza autonoma e hanno proprietà comuni; gli attributi di un'entità, ossia una sua proprietà locale; le relazioni tra entità.

Lo sviluppo di uno schema concettuale può seguire diverse metodologie:

  • Top-down: si procede per una serie di raffinamenti a partire da uno schema iniziale.
  • Bottom-up: le specifiche iniziali sono suddivise in componenti sempre più piccole (i concetti dello schema finale vengono via via introdotti).
  • Mista: combina la bottom-up e la top-down.

Lo schema concettuale che si ottiene deve avere le seguenti proprietà:

  • Correttezza
  • Completezza
  • Minimalità
  • Leggibilità
  • Modificabilità
  • Auto-documentabilità

Definire cosa si intende per dipendenza funzionale nel modello relazionale (+ Boyce-Codd)

La dipendenza funzionale è un vincolo di integrità che si usa quando si è introdotto in una relazione informazioni eterogenee. Essa descrive legami di tipo funzionale tra gli attributi di una relazione (X→Y→Z). In una relazione esisterà sempre una dipendenza funzionale DF tra una sua chiave e tutti gli attributi dello schema della relazione (proprio per definizione stessa di chiave). Da qui si ottiene che una relazione r(e) è in forma normale di Boyce-Codd se per ogni dipendenza funzionale X→Y su X contiene una chiave K di r.

CARATTERISTICHE E UTILIZZO DEL MODELLO ER NELL'AMBITO DELLA PROGETTAZIONE DELLE BASI DI DATI

Il modello E-R viene utilizzato nell'ambito della progettazione concettuale per la produzione di un modello concettuale. Attraverso una forma grafica, si descrivono i dati da rappresentare mediante relazioni fra oggetti. Il modello ha impatto sia a livello intensivo (intestazione delle tabelle) sia a livello estensivo (le tuple).

Fondamentali sono: le ENTITA' ossia una classe di oggetti che sono di interesse per l'applicazione, hanno esistenza autonoma e hanno proprieta' comuni; gli ATTRIBUTI di un'entita', ossia una sua proprieta' locale; le RELAZIONI tra entita'.

Lo sviluppo di uno schema concettuale puo' seguire diverse metodologie:

  • TOP-DOWN: si procede per una serie di raffinamenti a partire da uno schema iniziale
  • BOTTOM-UP: le specifiche iniziali sono suddivise in componenti sempre piu' piccole (i concetti dello schema finale vengono via via introdotti)
  • MISTA: combina la bottom-up e la top-down.

Lo schema concettuale che si ottiene deve avere le seguenti proprieta':

  • - Correttezza
  • - Completezza
  • - Minimalita'
  • - Modificabilita'
  • - Leggibilita'
  • - Auto-documentabilita'

DEFINIRE COSA SI INTENDE PER DIPENDENZA FUNZIONALE NEL MODELLO RELAZIONALE (+ BOYCE-CODD)

La DIPENDENZA FUNZIONALE e' un vincolo di integrita' che usiamo quando si e' introdotto in una relazione informazioni eterogenee. Essa descrive legami di tipo funzionale tra gli attributi di una relazione (Y -> Z). In una relazione esistera' sempre una dipendenza funzionale DF tra una sua chiave e tutti gli attributi dello schema della relazione (proprio per definizione stessa di chiave). Da qui si ottiene che una relazione R e' in forma normale di Boyce-Codd se per ogni dipendenza funzionale X -> Y su X contiene una chiave K di R.

SPIEGARE LA SEMANTICA DEGLI OPERATORI INSIEMISTICI

IN SQL (UNION, INTERSECT, EXCEPT)

IN SQL GLI OPERATORI INSIEMISTICI VANNO MESSI TRA DUE SELECT

DISTINTE E SIGNIFICANO:

  • UNION: L’UNIONE DELLA LISTA DI TUTTE LE ISTANZE (SENZA

    DUPLICATI) CONTENUTE NEI SELECT (SE VOLESSIMO ANCHE I

    DUPLICATI AGGIUNGERE ALL).

  • INTERSECT: L’INTERSEZIONE CHE RESTITUISCE LE ISTANZE IN

    COMUNE TRA GLI ATTRIBUTI OGGETTO DELLE SELECT.

  • EXCEPT: LA DIFFERENZA E RESTITUISCE TUTTE LE ISTANZE DEL

    PRIMO SELECT TRANNE QUELLE ISTANZE CHE SONO PRESENTI NEL

    SECONDO SELECT.

DESCRIVERE ASSERTIONI E VINCOLI DI CHECK IN SQL

SQL PERMETTE DI INTRODURRE VINCOLI DI INTEGRITÀ SPECIFICI QUALI

LA CLAUSOLA CHECK E LE ASSERTIONI.

LA CLAUSOLA CHECK DEVE ESSERE SEMPRE VERIFICATA AFFINCHÉ LA

BASE DI DATI SIA CORRETTA; IN CASO DI VIOLAZIONE DEL VINCOLO

L’OPERAZIONE CHE HA CAUSATO LA VIOLAZIONE VIENE DISFATTA

(ROLL BACK PARZIALE). QUANDO PERÒ UN VINCOLO DI CHECK RIGUARDA

DUO O PIÙ TABELLE POSSONO EMERGERE DELLE ANOMALIE IN

QUANTO LA CONDIZIONE È SPECIFICATA SUGLI ATTRIBUTI DELLE

TABELLE.

PER OVVIARE SONO STATE INTRODOTTE LE ASSERTIONI! CHE NON

SONO ASSOCIATE A NESSUN ATTRIBUTO O TABELLA MA APPARTENGONO

DIRETTAMENTE ALLO SCHEMA DELLA BASE DI DATI.

Illustrare fasi di sviluppo di una base di dati

La creazione di una base di dati si articola in sequenza nelle diverse fasi:

  • Raccolta dei requisiti: a contatto con il cliente per capire l'ambiente in cui l'applicazione dovrà lavorare
  • Progettazione concettuale: si cerca di elaborare una descrizione ad alto livello dei dati da memorizzare mediante il modello E-R in cui, mediante una forma grafica, i dati vengono espressi in termini di relazioni fra oggetti con entità, relazioni, attributi
  • Progettazione logica: dopo aver ristrutturato lo schema E-R (eliminando costrutti non direttamente traducibili, scegliendo gli identificatori principali) si costruisce uno schema logico in grado di descrivere in maniera corretta ed efficiente tutte le info dello schema E-R, secondo il DBMS scelto
  • Progettazione fisica: lo schema logico viene tradotto in uno schema fisico costituito dalla definizione di tabelle, di vincoli in un linguaggio formale
  • Realizzazione: vengono fisicamente create le tabelle

Concetto di relazione nel modello relazionale

Il modello relazionale si basa sul concetto matematico di relazione che viene espresso per mezzo di tabelle. Il modello si basa sulla presenza di valori, che sottostanno a determinati domini.

La relazione è sostanzialmente una tabella nella quale a ciascun dominio è associato un nome (attributo) unico nella tabella e posizionato come intestazione delle colonne; le righe sono specifici record (o tuple) diversi fra loro.

Una tabella è una relazione se: i valori nella colonna sono omogenei; le righe sono diverse tra loro; gli attributi sono diversi tra loro. Inoltre, l'ordinamento delle tuple è irrilevante (anche l'ordinamento delle colonne è irrilevante).

In SQL, invece, i risultati di un interrogazione sono multi-insiemi in cui ci sono anche duplicati (sono quindi no una relazione).

SI ILLUSTRI L'OPERATORE DI JOIN E LE SUE VARIANTI

L'algebra relazionale presenta degli operatori insiemistici, tra i quali figura il join in diverse varianti.

Il join condizionale (o theta join) è usato per combinare informazioni tra due o più relazioni, mediante il quale si effettua una select sul prodotto cartesiano delle due relazioni. È espresso dalla sintassi R₁ ⋈c R₂ in cui R₁ e R₂ sono le relazioni (tabelle) e c è la condizione sulla quale vogliamo effettuare la selezione.

L' equi-join è uno speciale caso del join condizionale in cui la condizione c è espressa solo da uguaglianze. Lo schema del risultato conterrà tutti gli attributi di R₁ e gli attributi di R₂ che non colpaiono nel join.

Il join naturale è un equi-join in cui le uguaglianze sono specificate su tutti gli attributi aventi lo stesso nome in R₁ e R₂ (se non ci sono attributi in comune si riduce ad essere un prodotto cartesiano).

DESCRIVERE CONCETTI E DIFFERENZE DI CHIAVE, CHIAVE PRIMARIA E SUPERCHIAVE

Una chiave è un insieme di attributi che identifica univocamente le tuple di una relazione : CF è chiave (tutti diversi!).

Una superchiave è un insieme di attributi che contengono una chiave : CF, Città, Nascita è superchiave (tuple tutte differenti). Inoltre (CF, Città) è una superchiave minimale, ossia non comprende altre superchiavi : CF, Città è chiave!

La possibile presenza di valori null nelle chiavi rende necessaria la presenza, in tutte le relazioni, di almeno una chiave primaria (scelta tra le chiavi o aggiunta) in cui si vieta la presenza di valori null e si assicura l'identificazione.

FUNZIONAMENTO DEGLI OPERATORI INSIEMISTICI IN ALGEBRA RELAZIONALE

In algebra relazionale una relazione è un insieme di tuple omogenee. Qualora le relazioni rispettino la compatibilità rispetto all'unione (stesso numero di campi, da sx a dx campi con stesso dominio), possiamo applicare gli operatori insiemistici:

  • Unione: R1 ∪ R2 contiene tutte le tuple (prese una sola volta) presenti in R1, R2 o in entrambe. Lo schema del risultato sarà identico a quello di R1.
  • Intersezione: R1 ∩ R2 contiene tutte le tuple (prese una volta sola) presenti contemporaneamente sia in R1 sia in R2.
  • Differenza: R1 - R2 contiene tutte le tuple presenti in R1 ma non in R2.

Spiegare il concetto di dipendenza funzionale e gli eventuali fenomeni indesiderati che causano.

La dipendenza funzionale è un vincolo di integrità che descrive legami di tipo funzionale tra gli attributi di una relazione e che interviene quando usiamo un'unica relazione per rappresentare informazioni eterogenee.

Possono generarsi anomalie, nel caso ridondanze, quando si ha una DF Y → Z talché Y non contiene una chiave.

... dipendenza funzionale quando può degenerare in un vincolo di chiave (con esempio)

Esisterà sempre una dipendenza funzionale DF tra una chiave di una relazione e tutti gli attributi dello schema della stessa proprio per la definizione di chiave. Quindi un vincolo di DF generalizza il vincolo di chiave, cioè una DF Y → Z sullo schema R(X) degenera in un vincolo di chiave se l'unione tra Y e Z è pari ad X.

CF Nome NASCITA

CF NASCITA → Nome

Anteprima
Vedrai una selezione di 3 pagine su 6
Appunti teoria Basi di dati Pag. 1 Appunti teoria Basi di dati Pag. 2
Anteprima di 3 pagg. su 6.
Scarica il documento per vederlo tutto.
Appunti teoria Basi di dati Pag. 6
1 su 6
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher RayGiulls di informazioni apprese con la frequenza delle lezioni di Basi di dati e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli Studi di Roma La Sapienza o del prof Catarci Tiziana.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community