DB- Sistemi Informativi

Slides:



Advertisements
Presentazioni simili
Modulo 5 DataBase ACCESS.
Advertisements

DBMS (DataBase Management System)
Algebra relazionale Presentazione 12.1
Una Introduzione alle Basi di Dati
1 Progettazione Concettuale: Entity/Relationships (E/R) Esigenza di strumenti efficaci, chiari e sintetici per rappresentare i dati di interesse e le loro.
1 Progettazione logica: Il modello relazionale Eugenio Di Sciascio.
Basi di Dati prof. A. Longheu
Gestione Dati & Archivi
Il modello relazionale: strutture e vincoli
ESEMPI DI ARCHIVI DI DATI
1 Microsoft Access 1. 2 Contenuto Dovete progettare e realizzare, usando Access, una base di dati che riguarda gli esami sostenuti dagli studenti iscritti.
Archivio Cé necessità di immagazzinare in modo permanente grandi quantità di dati. Esempio: anagrafe dei cittadini di un comune.
L’uso dei database in azienda
FONDAMENTI DI INFORMATICA III A2A1-1 CARATTERISTICHE E MODELLIZZAZIONE DEL LAVORO DUFFICIO Argomento 2 Approfondimento 1 CARATTERISTICHE E MODELLIZZAZIONE.
1 Corso di Laurea in Biotecnologie Informatica (Basi di Dati) SQL: Data Manipulation Language (DML) Anno Accademico 2009/2010 Da: Atzeni, Ceri, Paraboschi,
Corso di Informatica (Basi di Dati)
1 Corso di Laurea in Biotecnologie Informatica (Basi di Dati) Modello Relazionale Anno Accademico 2009/2010 Da: Atzeni, Ceri, Paraboschi, Torlone - Basi.
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
SQL Per la modifica di basi di dati
SQL Per la definizione di basi di dati SQL per definire ed amministrare Ogni utente puo definire una base di dati di cui diventa lamministratore potendo.
Appunti informatica- prof. Orlando De Pietro
Modello Relazionale Definisce tipi attraverso il costruttore relazione, che organizza i dati secondo record a struttura fissa, rappresentabili attraverso.
Relazioni Relazione : concetto mutuato dalla definizione di relazione matematica della teoria degli insiemi, come sottoinsieme del prodotto cartesiano.
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
Corso di Informatica - Basi di Dati Introduzione alle basi di dati Gabriella Pasi
Introduzione alle Basi di Dati. Overview Informazione = contenuto + struttura Informazione non strutturata Molto contenuto, poca struttura Un romanzo.
Il Modello Relazionale
Implementare un modello di dati
Progettazione di un Data Base
Progettare un database
Docente: Roberto Basili Fond Inf (a.a ) Introduzione alla Progettazione Concettuale R. Basili.
Introduzione alle basi di dati
EIPASS MODULO 5 Access 2007.
FUMETTERIA ON-LINE Anna Habib matr: Laboratorio Basi di dati II Università di Roma La Sapienza 18/12/2003.
Dati e DBMS DBMS relazionali SQL Progettazione di una base di dati Programma del Corso.
DATABASE Introduzione
Sistemi Informativi Insieme di “strutture” in grado di acquisire, elaborare, trasmettere ed archiviare informazioni in genere ad uso di un’organizzazione.
Corso di Informatica Corso di Laurea in Conservazione e Restauro dei Beni Culturali Gianluca Torta Dipartimento di Informatica Tel: Mail:
Il modello relazionale (II). Informazione incompleta e valori nulli In una tupla di una relazione un attributo può non avere valore Per esempio: Mario.
1 Basi di dati (Sistemi Informativi) Scuola di Dottorato in Scienze Veterinarie per la Salute Animale e la Sicurezza Alimentare a.a Ing. Mauro.
Modulo 5 DataBase ACCESS. Informazioni e Dati INFORMAZIONI vengono scambiate con linguaggio scritto o parlato DATI rappresentazione di informazioni in.
I DATABASE.
I DBMS BASI DI DATI (DATABASE) Insieme organizzato di dati utilizzati
Progettazione di una base di dati relazionale Problemi.
Secondo Compito:Progettazione di un database Pinto Vincenzo.
Il modello relazionale. Modello logico dei dati basato su concetti relazione e tabella Relazione: da teoria degli insiemi Tabella: rappresentazione grafica.
Basi di dati Maria Laura Alessandroni
Progettazione di Database
Basi Dati e Laboratorio (6 + 6) crediti – curriculum Sistemi e Reti Basi dati 1 e Basi dati 2 prec.ordin. docenti: Barbara Demo Giuseppe Berio mail :
Introduzione alle basi di dati
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 di una base di dati relazionale Vincoli.
Il modello relazionale
Progettazione database a cura di Roberta Mancini – matr CdLM in Marketing.
Funzionalità del DBMS relazionale l Funzioni per –definizione della base di dati –inserimento / rimozione /aggiornamento di informazioni deve soddisfare.
Analisi dei requisiti Si vuole creare un database che riesca a gestire i prestiti dei libri all’ interno di una biblioteca personale. Per poter eseguire.
NORMALIZZAZIONE ESERCIZI. INTRODUZIONE La modellazione E-R ci ha consentito di descrivere schemi relazionali Lo strumento base per la modellizzazione.
ICT e Sistemi informativi Aziendali Materiale di supporto alla didattica.
DB- Sistemi Informativi Insieme di programmi in grado di acquisire, elaborare, trasmettere ed archiviare informazioni in genere ad uso di un’organizzazione.
Le basi di dati.
Prima esercitazione di Basi di Dati Barcelli, Bardine, Loconsole, Manganelli e MIgliorini.
Linguaggi per basi di dati Linguaggi di definizione dei dati Utilizzati per definire gli schemi e le autorizzazioni per l’accesso Linguaggi di manipolazione.
Normalizzazione. Introduzione Nell’organizzazione tradizionale degli archivi, si verificano alcuni problemi, quali: Ridondanza dei dati (gli stessi dati.
Il modello relazionale. Modello Relazionale 2 Dal modello concettuale a quello logico Una volta stabilita la rappresentazione concettuale della realtà.
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 “strutture” in grado di acquisire, elaborare, trasmettere ed archiviare informazioni in genere ad uso di un’organizzazione (azienda o istituzione).

Dato <> Informazione I dati sono registrazioni della descrizione di una qualsiasi caratteristica della realtà, su un supporto che ne garantisca la conservazione, la comprensibilità e la reperibilità. 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: Collezione di dati organizzati in modo coerente (un insieme casuale di dati non è una base di dati !) Modella alcuni aspetti del mondo reale Costruito con funzionalità ben precise, note fin dall’inizio della progettazione.

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

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

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

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

Figure professionali (1) DB designer schema concettuale (astratto) della base di dati mapping su un modello dei dati gerarchico relazionale object oriented ...

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

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

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

Esempio rubrica COGNOME NOME TEL. Tanzi Rosario 095 89 ... Federici Susanna 011 55 ... De Bernardi Silvio 06 44 ...

Modello relazionale 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à Analogamente si possono considerare relazioni tra molti insiemi: A1 x ….xAn

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

Figlio di (Persone x Persone) Paolo Carla Mario Flavio Luca Anna Sono relazioni diverse! Persone Anna Luca Flavio Mario Carla Paolo

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

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

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

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

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

SCHEMA DI RELAZIONE R(A1, …, A_n) R relazione Ai attributi ISTANZA DI RELAZIONE (o semplicemente relazione ) r(R) = {<v1, v2, …, vn>} t=<v1, v2, …, vn > : n-tupla I singoli valori vi appartengono al dominio dell’attributo Ai

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

La tabella rubrica Rubrica(Cognome,Nome,Tel) schema nomi degli attributi COGNOME NOME TEL. Tanzi Rosario 095 89 ... Federici Susanna 011 55 ... De Bernardi Silvio 06 44 ... tuple

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

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

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

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

Connettivi booleani: tavole di verità Negazione Congiunzione Disgiunzione

Relazioni boolene not (A and B) = not (A) or not(B) not (A or B) = not (A) and not(B) La funzione imp (implica) A imp B =def not(A) or B La funzione XOR (OR esclusivo) A xor B =def (A or B) and not(A and B)

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

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

Codifica del Vincolo (media >= 27) AND (reddito <= 20000) OR ((residente = NO) AND (media >= 25) AND (reddito <=25000))

se i ¹ j allora ti[SK] ¹ tj[SK] Vincoli di chiave superchiave: sottoinsieme SK di attributi di una relazione per cui se i ¹ j allora ti[SK] ¹ tj[SK] Una superchiave identifica un’entità in modo univoco in una relazione 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 integrità referenziale: consistenza tra tuple di due relazioni 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 In un database relazionale le tabelle sono collegate tra loro tramite i valori di attributi correlati (o comuni) 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

Un vincolo di integrità referenziale tra un insieme di attributi X di una relazione R1 e una relazione R2 è soddisfatto se: i valori di ciascuna tupla di R1 per gli attributi X esistono come valori della chiave primaria di R2 In questo caso si dice anche che X è una chiave esterna di R1

ESEMPIO: Vincoli di Integrità referenziale STUDENTE(Nome,Cognome,Matricola,Data di Nascita) CORSI(Titolo,Docente,Codice Corso) 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)

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