DB- Sistemi Informativi Insieme di programmi in grado di acquisire, elaborare, trasmettere ed archiviare informazioni in genere ad uso di un’organizzazione.

Slides:



Advertisements
Presentazioni simili
Modulo 5 DataBase ACCESS.
Advertisements

DB - Modello relazionale dei dati
Creazione di archivi tramite Data Base
DBMS (DataBase Management System)
Normalizzazione Forme Normali.
Algebra relazionale Presentazione 12.1
Una Introduzione alle Basi di Dati
4 – Progettazione – Introduzione e Modello E-R
Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati Atzeni – Ceri – Paraboschi - Torlone.
Il modello relazionale: strutture e vincoli
ESEMPI DI ARCHIVI DI DATI
Archivio Cé necessità di immagazzinare in modo permanente grandi quantità di dati. Esempio: anagrafe dei cittadini di un comune.
I file l I File sono l unità base di informazione nellinterazione tra utente e sistema operativo l Un file e costituito da un insieme di byte attinenti.
L’uso dei database in azienda
Basi di dati. Vantaggi degli archivi digitali Risparmio di spazio: sono facilmente trasferibili e duplicabili Risparmio di tempo: si può accedere ai dati.
Basi di dati Università Degli Studi Parthenope di Napoli
Relazioni Relazione : concetto mutuato dalla definizione di relazione matematica della teoria degli insiemi, come sottoinsieme del prodotto cartesiano.
Normalizzazione Le forme normali certificano che la base di dati soddisfa criteri di qualità che mirano ad evitare le ridondanze e i conseguenti effetti.
Modello Relazionale Proposto agli inizi degli anni ‘70 da Codd
Informazione incompleta Le tuple che compongono la base di dati devono essere omogenee. Quindi ad ogni attributo deve essere associato un valore in ogni.
Basi di dati Claudia Raibulet
Introduzione alle Basi di Dati. Overview Informazione = contenuto + struttura Informazione non strutturata Molto contenuto, poca struttura Un romanzo.
Implementare un modello di dati
De Sario Simona Matricola: Si vuole automatizzare la gestione di una biblioteca personale. A tale scopo bisognerà memorizzare i dati relativi.
INFORMATICA Corso Base Modulo G: I DataBase  Access.
PROGETTAZIONE DI UN DATABASE
Progettazione di un Data Base
1.Progettare il seguente DataBase in relazione ai due esempi presenti in piattaforma, Modulo 4, esempi 1 e 2: Considerare le informazioni per la gestione.
1)PROGETTAZIONE DI UN DATABASE
Secondo compito: Progettazione di un Data Base Francesco Musmanno –
Il modello ER Proposto da Peter Chen nel 1976 rappresenta uno standard per la progettazione concettuale (in particolare per le basi di dati) Ha una rappresentazione.
Progettare un database
Introduzione a Oracle 9i
LE BASI DI DATI E IL LINGUAGGIO SQL.
Corso di Basi di Dati Il Linguaggio SQL Home page del corso:
Sistemi di Elaborazione delle Informazioni Mod.I.
Basi di Dati e Sistemi Informativi Il Linguaggio SQL Home page del corso:
EIPASS MODULO 5 Access 2007.
DATABASE Introduzione
Sistemi Informativi Insieme di “strutture” in grado di acquisire, elaborare, trasmettere ed archiviare informazioni in genere ad uso di un’organizzazione.
DB- Sistemi Informativi
ITCG “V. De Franchis” - PON FSE Modulo G/1 l’informatica”
Modulo 5 DataBase ACCESS. Informazioni e Dati INFORMAZIONI vengono scambiate con linguaggio scritto o parlato DATI rappresentazione di informazioni in.
I DBMS BASI DI DATI (DATABASE) Insieme organizzato di dati utilizzati
Progettazione Logica Il prodotto della progettazione logica è uno schema logico che rappresenta le informazioni contenute nello schema E-R in modo corretto.
Il modello relazionale. Modello logico dei dati basato su concetti relazione e tabella Relazione: da teoria degli insiemi Tabella: rappresentazione grafica.
Progettazione di Database
PROGETTAZIONE DI UN DATA BASE PERAGINE MARIANTONELLA MATRICOLA
Progettazione di una base di dati Ciclo di vita di un sistema informativo Studio di fattibilità definisce le varie alternative possibili, i relativi costi.
Basi di dati e Relazioni Uno schema di relazione R(X) è costituito da un simbolo (nome della relazione) R e da una serie di attributi X={A 1, A 2, …, A.
Progettazione Logica Il prodotto della progettazione logica è uno schema logico che rappresenta le informazioni contenute nello schema E-R in modo corretto.
Progettazione di una base di dati relazionale Vincoli.
Sistemi di Elaborazione delle Informazioni
Il modello relazionale
Progettazione database a cura di Roberta Mancini – matr CdLM in Marketing.
Eprogram informatica V anno.
Funzionalità del DBMS relazionale l Funzioni per –definizione della base di dati –inserimento / rimozione /aggiornamento di informazioni deve soddisfare.
Cloud informatica V anno.
PROGETTAZIONE DI UN DATABASE SARA A. L. DI GAETANO.
NORMALIZZAZIONE ESERCIZI. INTRODUZIONE La modellazione E-R ci ha consentito di descrivere schemi relazionali Lo strumento base per la modellizzazione.
Le basi di dati.
Linguaggi per basi di dati Linguaggi di definizione dei dati Utilizzati per definire gli schemi e le autorizzazioni per l’accesso Linguaggi di manipolazione.
Basi di Dati e Sistemi Informativi Esempi & Esercizi Il Modello Relazionale Home page del corso:
1. CASO BIBLIOTECA ANALISI DEI REQUISITI Si vuole automatizzare la gestione prestiti dei libri di una biblioteca personale. La progettazione deve tener.
Normalizzazione. Introduzione Nell’organizzazione tradizionale degli archivi, si verificano alcuni problemi, quali: Ridondanza dei dati (gli stessi dati.
Il Modello Relazionale. I modelli logici dei dati Tradizionalmente, esistono tre modelli logici: –gerarchico –reticolare –relazionale I modelli gerarchico.
1 “ Le Basi di Dati ”. 2 Parte 5: Tabelle –Creazione di una tabella –Indici e chiavi primarie –Relazioni e integrità referenziale Basi di Dati Struttura.
Il modello relazionale. Modello Relazionale 2 Dal modello concettuale a quello logico Una volta stabilita la rappresentazione concettuale della realtà.
Progettazione di Database l Progettazione Concettuale: strutturazione della “realtà” che si vuole rappresentare secondo uno schema concettuale l Dallo.
Linguaggio SQL. Linguaggi per database La diffusione del modello relazionale ha favorito l’uso prevalente di linguaggi non procedurali: in questo modo.
Transcript della presentazione:

DB- Sistemi Informativi Insieme di programmi in grado di acquisire, elaborare, trasmettere ed archiviare informazioni in genere ad uso di un’organizzazione (azienda o istituzione).

Dato <> Informazione l I dati sono registrazioni di descrizioni di una qualsiasi caratteristica della realtà, su un supporto che ne garantisca la conservazione, la comprensibilità e la reperibilità. l L’ informazione produce variazioni nel patrimonio conoscitivo di un soggetto. Proviene dai dati, ma i dati devono essere inseriti in un contesto interpretativo

DBMS (Database Management System) Obiettivo: gestione strutturata di dati, organizzati in modo omogeneo. Base di dati: l Collezione di dati organizzati in modo coerente (un insieme casuale di dati non è una base di dati !) l Modella alcuni aspetti del mondo reale l Costruito con funzionalità ben precise, note fin dall’inizio della progettazione.

Esempi di basi dati: l Rubrica telefonica personale l anagrafe l segreteria studenti dell’università l banca dati centrale del ministero delle finanze l archivio di una biblioteca, di un laboratorio d’analisi mediche, di un museo l banca dati di una carta di credito l banca dati delle prenotazioni dei voli di una compagnia aerea

Basi di dati: operazioni l Progetto: definizione della base di dati –quali informazioni rappresentare –quali relazioni tra le informazioni l Interazione: –inserimento di dati –cancellazione di dati –aggiornamento (update) –interrogazione l Gestione di operazioni da parte di utenti multipli l Protezione e sicurezza dei dati

Livelli di rappresentazione l Livello fisico: come i dati sono memorizzati e organizzati su uno o più supporti di memoria secondaria l Livello logico: come i dati sono organizzati secondo il modello logico adottato (relazionale, gerarchico, ad oggetti etc.) l Livello concettuale: come i dati sono organizzati secondo uno schema concettuale l Livello esterno: come i dati appaiono o vengono presentati all’utente (possono essere anche programmi)

Livelli di rappresentazione Vista 1Vista 2Vista n Livello logico Livello fisico Livello concettuale

Figure professionali (1) l DB designer: –schema concettuale (astratto) della base di dati –Traduzione dello schema concettuale in un modello dei dati: gerarchico relazionale object oriented...

Figure professionali (2) l DB programmer (realizzazione della base di dati) l DB administrator (gestione della base dati) l Users utenti esperti (usano un linguaggio di interrogazione) utenti naifs (interazioni predeterminate, forms) programmi

Esempio: Database di un Museo come rappresentare/strutturare queste informazioni? l Il museo contiene tre tipi di oggetti: reperti archeologici, materiale etnografico e opere d’arte (quadri, sculture) l Conseguentemente, il museo ha tre sezioni: Archeologica, Etnografica, Collezione (di opere) d’arte l Di tutti i pezzi del museo si vogliono mantenere le informazioni: numero di inventario, provenienza datazione, descrizione, misure, se ha subito restauri o no, sala ed eventualmente collocazione (scaffale, etc…) l Se un oggetto ha subito restauri, si vuole mantenere l’informazione riguardo presso quale centro è stato restaurato e quando

l Le opere d’arte hanno associata l’informazione sugli autori l Per i reperti archeologici si vuole mantenere l’informazione sulla data del ritrovamento l Gli oggetti della sezione etnografica sono divisi in tre tipologie: costumi, mobili, suppellettili l Ogni sezione comprende alcune sale. Le sale possono essere condivise da sezioni diverse e l’attribuzione di una sala ad una sezione puo’ cambiare nel tempo. Alle sale è associata altra informazione (che non verrà condiderata nell’esempio) l Le sezioni hanno un impiegato responsabile

Modello relazionale l I dati sono organizzati in relazioni l le relazioni possono essere interpretate/visualizzate come tabelle l un database è un insieme di relazioni

Rappresentazione tabellare dei dati: esempio Libro N.Inv Autore Titolo Anno_ed. Casa ed. Colloc.

Esempio rubrica COGNOMENOMETEL. TanziRosario FedericiSusanna De BernardiSilvio

Modello relazionale l Relazione su due insiemi A e B è un sottoinsieme del prodotto cartesiano A x B Esempio sposato_con  Persone x Persone figlio_di  Persone x Persone vive_a  Persone x Città l Analogamente si possono considerare relazioni tra molti insiemi: A1 x ….xAn

Esempio di relazione l Persone= {Paolo, Luca,Mario} Città={Torino,Roma} l Persone x CittàVive_a Mario PersoneCittà Paolo Luca Torino Roma Città Persone Paolo Luca MarioRoma Torino

Figlio di (Persone x Persone) Persone Paolo Carla MarioFlavio Luca Anna Persone Anna Luca FlavioMario Carla Paolo Sono relazioni diverse!

Relazioni e Attributi Attributi: nomi che specificano un ruolo in una relazione, esempi: l sposato_con(Marito, Moglie) l figlio_di(Figlio, Genitore) l vive_a(Nome,Citta,Provincia) libro( N.Inv, Autore, Titolo, Anno_edizione, Casa_editrice, Collocazione) l Gli attributi devono avere nomi differenti

ESEMPIO DATABASE ESAMI l Prima idea: un’unica tabella: ESAME(Nome,Cognome,DataNascita, Matricola,Titolo, Docente,Voto,Lode)

Il database contiene informazione ridondante: l per ogni esame sostenuto si ripetono tutti i dati dello studente l per ogni corso si ripetono titolo e docente Organizzazione Inefficiente!

Organizzazione migliore: l STUDENTE(Nome,Cognome,Matricola,Data di Nascita) l CORSI(Titolo,Docente,Codice Corso) l ESAMI(Codice Corso,Voto,Lode,Matricola)

Studenti Corsi Esami

Terminologia l DOMINIO: insieme di valori degli attributi –es. Nomi di persona, Nomi di città, Numeri interi, stringhe di al più 80 caratteri l FORMATO: rappresentazione degli elementi di un dominio –es. tre cifre decimali per i reali

l SCHEMA DI RELAZIONE R(A 1, …, A_ n ) R relazione A i attributi l ISTANZA DI RELAZIONE (o semplicemente relazione) insieme di tuplet t= : n-tupla l I singoli valori v i appartengono al dominio dell’attributo A i

l Istanza di relazione = insieme di tuple – Non ci possono essere tuple ripetute – l’ordine delle tuple non conta l Database = insieme di istanze di relazioni Terminologia alternativa: – tuple: records – attributi: campi

La tabella rubrica Rubrica(Cognome,Nome,Tel) COGNOMENOMETEL. TanziRosario FedericiSusanna De BernardiSilvio schema nomi degli attributi tuple

Informazione incompleta: Valori Nulli Il valore speciale “null” aggiunto a tutti i domini, per indicare assenza di valore indica: l valore mancante, oppure l valore sconosciuto l Esempio PERSONE(Cognome,Nome,Indirizzo,Telefono) Il valore di Telefono potrebbe essere null.

Vincoli sulle Relazioni l I valori contenuti nelle tabelle possono essere soggetti a vari tipi di vincoli che dipendono dalla ‘realtà’ che si vuole rappresantare: l vincoli di dominio: valori dei singoli attributi l vincoli di tupla: valori di attributi correlati in una tupla l vincoli di integrità valori di attributi in tuple diverse (anche in relazioni diverse)

Vincoli di dominio vincoli sui valori dei singoli attributi (vincoli di dominio), es: l dato ESAMI(Studente,Voto, Lode,Corso) deve essere Voto >=18 AND Voto <=30 l Vincoli sul valore di un attributo data

Vincoli di tupla vincoli sui valori di attributi correlati, es: l Data la relazione ESAMI come prima deve essere not (Lode = Yes) OR Voto = 30 equivalente a Lode= No OR Voto = 30

Connettivi booleani: tavole di verità Negazione Congiunzione Disgiunzione

Relazioni boolene l not (A and B) = not (A) or not(B) l not (A or B) = not (A) and not(B) l La funzione imp (if) - implica A imp B = def not(A) or B l La funzione sse (iff) A sse B = def (A imp B) and (B imp A) l La funzione XOR -OR esclusivo A xor B = def (A or B) and not(A and B)

Implicazione Sono logicamente equivalenti: l Se A allora B l A solo se B l A implica B Esempio: l Se Mario viene alla festa allora Anna viene alla festa l Mario viene alla festa solo se Anna viene alla festa l Mario viene alla festa implica che Anna viene alla festa Tutte vengono rappresentate con not(A) or B o equivalentemente con A imp B

Altri esempi l Lode = SI implica voto=30 l Se lode= SI allora voto=30 l Lode=SI solo se voto=30

Esempio Vincolo (complesso) Supponiamo che STUDENTE contenga anche gli attributi l Borsa di Studio: valori {Yes, No} l Reddito (della famiglia): euro l Residente (nella città sede univ.): {Yes, No} Criterio per una borsa di Studio: –ha una media >= 27 e un reddito <= 20000, oppure – non è residente e ha una media >= 25 e un reddito <=25000

Codifica del Vincolo sia C il vincolo qui sotto: ((media >= 27) AND (reddito <= 20000)) OR ((residente = NO) AND (media >= 25) AND (reddito <=25000)) l Condizione necessaria: –BorsaDiStudio = YES implica C, tradotto in BorsaDiStudio = NO or C l Condizione sufficiente: –C implica BorsaDiStudio = YES tradotto in Not (C) or BorsaDiStudio= YES

Vincoli di chiave l superchiave: sottoinsieme SK di attributi di una relazione per cui se i  j allora t i [SK]  t j [SK] Una superchiave identifica un’entità in modo univoco in una relazione l CHIAVE PRIMARIA = superchiave minimale non ci possono essere righe diverse con la stessa chiave primaria (Indichiamo in modo sottolineato gli attributi che formano la chiave primaria)

VINCOLI DI INTEGRITA’ sull’entità : chiave primaria  null l integrità referenziale: consistenza tra tuple di due relazioni l integrità semantica: vincoli che dipendono dalla realtà rappresentata (altro es. numero di libri in prestito a ciascun utente < 5, in una relazione in cui ogni prestito compaia come una tupla separata)

Vincoli di Integrità referenziali l In un database relazionale le tabelle sono collegate tra loro tramite i valori di attributi correlati (o comuni) l Esempio –Il collegamento tra la relazione ESAMI e STUDENTI puo’ essere espresso dall’attributo comune Matricola –Il collegamento tra la relazione CORSI e ESAMI puo’ essere espresso dall’attributo comune Codice Corso

l Un vincolo di integrità referenziale tra un attributo A di una relazione R1 e una relazione R2 è soddisfatto se: il valore di ciascuna tupla di R1 per l’attributo A esiste come valore della chiave primaria di una tupla di R2 l In questo caso si dice anche che A è una chiave esterna (foreign key) di R1 l La definizione si generalizza al caso di un insieme di attributi X anziche’ un singolo attributo A

ESEMPIO: Vincoli di Integrità referenziale l STUDENTE(Nome,Cognome,Matricola,Data di Nascita) l CORSI(Titolo,Docente,Codice Corso) l ESAMI(Codice Corso,Voto,Lode,Matricola) Vincolo referenziale: tra Matricola di ESAMI e STUDENTE: i valori di Matricola di Esami devono esistere come valori della chiave primaria (Matricola di STUDENTE)

Altro Esempio l Auto(Targa, Marca, Modello, Proprietario) l Proprietario(Nome,CodiceFiscale,Indirizzo) l Incidente(NumSinistro,Veicolo1,Veicolo2, Data,Luogo) Vincoli di Integrita’ Referenziale: –Tra Proprietario e CodiceFiscale –Tra Veicolo1 e Targa –Tra Veicolo2 e Targa

Funzionalità del DBMS relazionale l Funzioni per –definizione della base di dati –inserimento / rimozione /aggiornamento di informazioni deve soddisfare i vincoli! –Interrogazione l Access DBMS relazionale in ambiente Office