DATABASE Sono strumenti informatici con i quali è possibile memorizzare e gestire numerose quantità di informazioni di un’ organizzazione, in modo: Semplice;

Slides:



Advertisements
Presentazioni simili
Modulo 5 DataBase ACCESS.
Advertisements

La modellizzazione dei dati
La progettazione concettuale
Informatica II – Basi di Dati (08/09) – Parte 1
Corso di Laurea in Biotecnologie Informatica (Basi di Dati)
Creazione di archivi tramite Data Base
IL MODELLO ENTITÀ-RELAZIONE Gli altri costruttori
IL MODELLO ENTITA’ - RELAZIONE I costruttori di base
Progettazione concettuale
DBMS (DataBase Management System)
Estendere i linguaggi: i tipi di dato astratti
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità C1 Il linguaggio SQL.
Progettazione concettuale
Basi di Dati prof. A. Longheu
4 – Progettazione – Introduzione e Modello E-R
Creazione di archivi tramite Data Base
Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati Atzeni – Ceri – Paraboschi - Torlone.
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
ENTITÀ - RELAZIONE MODELLO ENTITÀ E ATTRIBUTI DOMINI RELAZIONI
Corso di Informatica (Basi di Dati)
Corso di Informatica (Basi di Dati)
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
Progettazione di una base di dati
Partizionamento/accorpamento di concetti
DBMS ( Database Management System)
Implementare un modello di dati
INFORMATICA Corso Base Modulo G: I DataBase  Access.
COMPITO 2 CELESTE BONANNO MATR CDL: SDFA.
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.
MODELLO LOGICO DEI DATI
Progettare un database
Dottorato di ricerca Nuove Tecnologie e Informazione Territorio – Ambiente Nozioni fondamentali di Basi di Dati Seminario interno.
Introduzione a Oracle 9i
LE BASI DI DATI E IL LINGUAGGIO SQL.
Dati e DBMS DBMS relazionali SQL Progettazione di una base di dati Programma del Corso.
DATABASE Introduzione
MODELLO E/R.
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.
Modulo 5 - Database. Contenuti della lezione 5.1.1Concetti Fondamentali 5.1.2Organizzazione di un Database 5.1.3Relazioni 5.2.1Lavorare con i database.
Modellazione dei Dati Fabio Scanu a.s. 2012/2013.
I DBMS BASI DI DATI (DATABASE) Insieme organizzato di dati utilizzati
Informatica Introduzione alle basi di dati Lezione 2 Scienze e tecniche psicologiche dello sviluppo e dell'educazione, laurea magistrale Anno accademico:
Progettazione Logica Il prodotto della progettazione logica è uno schema logico che rappresenta le informazioni contenute nello schema E-R in modo corretto.
Database Progettazione Concettuale
Dati e DBMS DBMS relazionali SQL Progettazione di un DBMS Normalizzazione Programma del Corso di Basi di Dati.
Basi di dati Maria Laura Alessandroni
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1999
Progettazione di Database
Progettazione di una base di dati Ciclo di vita di un sistema informativo Studio di fattibilità definisce le varie alternative possibili, i relativi costi.
Dati e DBMS DBMS relazionali SQL Progettazione di una base di dati Normalizzazione Programma del Corso.
Progettazione Logica Il prodotto della progettazione logica è uno schema logico che rappresenta le informazioni contenute nello schema E-R in modo corretto.
Database Progettazione Logica
Sistemi di Elaborazione delle Informazioni
Mapping Database Atsilo
Metodologie e modelli per il progetto. 2 Introduzione alla progettazione Il problema: progettare una base di base di dati a partire dai suoi requisiti.
1 Esami Esame scritto: Tra 21 e 25 domande: 20 domande chiuse (20 punti),  5 domande aperte (10 punti) 1½ ore Esame orale/applicativo: Esercizi usando.
Eprogram informatica V anno.
Cloud informatica V anno.
MODELLO E/R.
ICT e Sistemi informativi Aziendali Materiale di supporto alla didattica.
Le basi di dati.
1. CASO BIBLIOTECA ANALISI DEI REQUISITI Si vuole automatizzare la gestione prestiti dei libri di una biblioteca personale. La progettazione deve tener.
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à.
BASI DATI: modello relazionale BIOINGEGNERIA ELETTRONICA ED INFORMATICA Lezione IIIb - AA 2014/20151.
Modulo 5 – Database ACCESS LICEO SCIENTIFICO “ B. RESCIGNO COMPUTER SCUOLA PIANO INTEGRATO 2008/09 ESPERTO prof.ssa Rita Montella.
Transcript della presentazione:

DATABASE Sono strumenti informatici con i quali è possibile memorizzare e gestire numerose quantità di informazioni di un’ organizzazione, in modo: Semplice; Efficiente, nell’ uso del processore e della memoria; Efficace; Sicuro; Solido; Condiviso. Un Sistema Informativo comprende strumenti automatici, risorse umane e materiali, procedure manuali, norme organizzative orientate alla gestione delle informazioni di un’ organizzazione. Un Sistema Informatico (SI), anche chiamato EDP, è un sottoinsieme del Sist. Informativo e si dedica alla gestione automatica delle informazioni, rappresentate da dati digitali. Componenti software: Archivio e Applicazione informatica.

DATABASE Applicazione 1 Applicazione 2 Dati applicazione 1 Possibili accessi multipli Utente DB Definizione dati Applicazione La definizione dei dati e i dati stessi sono salvati all’interno dello stesso DB. L’ applicazione e i suoi dati sono diventati indipendenti l’uno dall’altro. (Esempio)

DBMS (DataBase Management System) La teoria dei DB introduce una nuova metodologia di gestione degli archivi, con l’obiettivo di superare i limiti della metodologia precedente. Presenta caratteristiche di indipendenza logica ed indipendenza della struttura fisica dei dati. E’ il sistema di gestione del database nel suo complesso. Funzioni: Gestire grandi quantità di dati con l’obiettivo dell’efficienza; Condivisione= necessità di coordinare gli accessi; Persistenza= assicurare l’affidabilità dei dati nel tempo.

DBMS (DataBase Management System) Progettare un DB consta di 5 passi: Analisi del problema; Progettazione concettuale, utilizzando il modello Entità-Relazione; Progettazione logica, utilizzando vari modelli: gerarchico, reticolare, relazionale, a oggetti, XML; Progettazione fisica e implementazione; Realizzazione applicazioni/ procedure, utilizzando linguaggi di programmazione e di interrogazione. Modellazione dei dati comprende 1,2 e 3; consiste nella progettazione delle tabelle del DB. Modellazione funzionale comprende 4 e 5; consiste nell’ implementazione delle tabelle e nella creazione delle funzioni che accedono ai dati. Modello E-R risponde a : ‘COSA deve essere rappresentato?’ Modello logico risponde a : ‘COME sono organizzati i dati?’

MODELLI LOGICI PER LE BASI DI DATI Modello Gerarchico I dati sono organizzati secondo strutture ad albero che rappresentano la gerarchia degli elementi dell’archivio. La radice è il record principale da cui partono uno o più sottoalberi; ogni elemento è denominato segmento e il tipo di relazione realizzata tra segmenti padri e figli è 1:N (1 a molti). «ogni padre può avere più figli, ma ogni figlio può avere solo un padre» Dipendenti Bianchi Vittori Zaccarian Figli Claudia Luigi Giancarlo Mario Simona Dipendenti Bianchi Vittori Zaccarian Figli Claudia Luigi Giancarlo Mario Simona

MODELLI LOGICI PER LE BASI DI DATI Modello Reticolare La base del modello è la struttura a grafo, dove mediante puntatori è possibile accedere ai dati più facilmente rispetto al modello gerarchico. E’ rappresentato con un insieme di vertici (o nodi) e un insieme di coppie di vertici (o connessioni). È possibile stabilire connessioni N:N realizzate attraverso record connettori. Paziente Angelo Giulio Antonio Esame clinico Radiografia Ecografia TAC 6 6 5 5 4

MODELLI LOGICI PER LE BASI DI DATI Modello Relazionale Usa come struttura dati la relazione (o tabella), che è composta da: Le colonne sono i Campi (o proprietà); Ogni riga corrisponde a un Record. L’informazione è contenuta nei campi e non in strutture fisiche come i puntatori. Realizza l’indipendenza dei dati; la rappresentazione logica dei dati non fa alcun riferimento a quella fisica. Scontrino Numero Data Importo 15/10/2012 5,00 16/10/2012 6,50 17/10/2012 12,00 Entità Campi Tracciato record Record

MODELLI LOGICI PER LE BASI DI DATI Modello a oggetti di database (object-oriented) Si fondano sugli stessi principi della programmazione ad oggetti, nella quale ogni oggetto può essere caratterizzato da proprietà e da metodi. Quindi memorizzano nel DB non solo i dati ma anche le operazioni che possono essere eseguiti su di essi. Modello XML XML è simile al HTML, da cui eredita i tag, che in questo linguaggio non sono preimpostati, sono molteplici e descrivono quanto racchiuso tra le parentesi <>, come definito dal programmatore. Ha una struttura di tipo gerarchico. <?xml version="1.0" encoding="utf-8" ?> <system.serviceModel> <services> <service name="MvcApplication1.RecuperaService"> <host> <baseAddresses> <add baseAddress="http://localhost:8732//RecuperaService/" /> </baseAddresses> </host> </service> </services> </system.serviceModel>

MODELLO ENTITA’ - RELAZIONE Entità : oggetto principale di interesse per la realtà che vogliamo modellare. Può essere classificata definendo il tipo di entità attraverso un nome. Viene rappresentata graficamente con un rettangolo, nel quale l’intestazione è il nome dell’entità, mentre le relazioni sono linee che collegano i rettangoli. Entità forte: non ha bisogno di altre entità per essere identificata. Entità debole: richiede altre entità per essere identificata. Esempio. Paziente --> e. forte; Esame clinico --> e. debole. Entità associativa: è usata per associare 2 o più entità allo scopo di risolvere un’associazione multipla (es. una relazione N:N). Esempio. Paziente ed Esame clinico; Referto è e.associativa. Istanza : riferita ad un’entità, consiste in un singolo oggetto descritto dall’entità. E’ l’analogo di un singolo record all’interno di un file. Attributi : descrivono le entità con le quali sono associati. Una particolare istanza di un attributo è detta valore.

MODELLO ENTITA’ - RELAZIONE Dominio di un attributo : collezione di tutti i possibili valori, omogenei tra loro, che un attributo può avere. I diversi valori assunti dagli attributi determinano le diverse istanze dell’entità. Per ogni attributo è necessario individuare: Il formato; La dimensione; L’ opzionalità  a. obbligatorio : esempio è nome di Persona; a. facoltativo : è ammesso il valore nullo (es. titolo universitario); Gli attributi sono classificati in : Identificatori: sono detti chiavi e permettono di distinguere fra loro le istanze di una stessa entità; Descrittori: descrivono una caratteristica non unica di un’istanza di un’entità. Scontrino Numero {PK} Data Importo Entità Identificatore chiave Descrittori

MODELLO ENTITA’ - RELAZIONE Relazione: rappresenta un’ associazione tra una o più entità. Ha 2 versi con specifici significati. Ogni verso ha un’entità di partenza, una di arrivo e una descrizione dell’ associazione. Studente Cellulare (E’ posseduto) Possiede Le relazioni sono classificate in termini di grado, cardinalità, direzione, esistenza. Grado: n° di entità associate nella relazione; si ottengono rel. binarie, ternarie, n-arie. Esempio binaria ricorsiva: Giocatori  Capitano  Cardinalità: 1:1 1:N (N grande) N:N (o M) Donna Figlio Atleta Gara Nazione Capitale

MODELLO ENTITA’ - RELAZIONE Direzione: indica l’entità ‘padre’ da cui trae origine la relazione con l’entità ‘figlio’. Studente Scuola Padre Figlio Ospitare Esistenza: obbligatoria: se un’istanza di un’entità deve necessariamente esserci affinché sia inclusa nella relazione. opzionale: se l’istanza di un’entità non è richiesta. Persona Automobile facoltativa obbligatoria I nomi degli attributi devono essere scritti al singolare, così come il nome dell’entità !

CHIAVI PRIMARIE E CHIAVI ARTIFICIALI Una chiave primaria è un attributo o un insieme di attributi che identifica univocamente una specifica istanza di un’entità. Per identificarla, un attributo deve avere le seguenti caratteristiche: Deve essere specificato il suo valore per ogni istanza dell’entità; Il valore deve essere unico per ogni istanza dell’entità; Il valore non deve cambiare o diventare nullo nel corso del tempo utile. Le chiave candidate diventano, con la scelta, chiave primaria e chiavi alternative. Chiave primaria si indica con (pk) a fianco della chiave. Esempio. (schema relazionale) Impiegati (CodFiscale(pk), Nome, Telefono) Impiegati (CodFiscale, Nome, Telefono) Una chiave artificiale è formata da un attributo privo di un significato proprio che viene aggiunto agli altri per ottenere un codice univoco per ogni istanza. Esempio: attributo di tipo contatore. È ammessa quando nessun attributo ha tutte le proprietà di una chiave primaria e quando quest’ultima è grande e complessa.

MIGRAZIONE DI CHIAVI, CHIAVI ESTERNE E COMPOSTE Migrazione di chiave primaria Le entità deboli ereditano l’ intera chiave primaria dall’ entità padre. Paziente ID_Paziente(pk) Esame ID_Esame(pk) Entità forte Entità debole Scrittura nello schema relazionale: Esami (ID_Esame(pk), ID_Paziente(pk)) Una chiave composta è una chiave primaria formata da due o più attributi. Una chiave esterna è un attributo che completa una relazione attraverso l’identificazione dell’ entità padre. Fornisce un metodo per mantenere l’integrità referenziale dei dati e per navigare tra le diverse istanze di un’ entità. Utilizza la notazione (fk) iniziali di «foreign key». Ogni relazione «1 a molti» nel modello deve essere supportata da una chiave esterna.

MODELLO ENTITA’ - RELAZIONE Persona Cod. Fiscale (pk) Nome Cognome Data_Nascita Indirizzo Automobile Modello (pk) Produttore Cilindrata Prezzo_Listino Acquistare Data_Acquisto Prezzo_Acquisto Nome_associazione attributi_associazione

MODELLO ENTITA’ - RELAZIONE Persona Cod. Fiscale(pk) Nome Cognome Data_Nascita Indirizzo Automobile Modello(pk) Produttore Cilindrata Prezzo_Listino Acquisto Cod.Fiscale(pk) Modello(pk) Data_Acquisto Prezzo_Acquisto Entità debole Entità forte L’ entità Acquisto eredita le chiavi primarie di Persona e Automobile ed assume significato solo in abbinamento alle altre due entità. Per evitare di avere entità deboli si aggiunge un attributo, in genere un numero progressivo assegnato automaticamente (es.: Contatore).

CHIAVI ESTERNE Città Continente Nazione ID_Città(pk) id_Nazione(fk) id_Continente(fk) Continente ID_Continente(pk) appartiene Nazione ID_Nazione(pk) forma Nel caso di chiavi primarie artificiali si scrive: ID + <nome entità>. Nel caso di chiavi esterne artificiali si scrive: id + <nome entità>. Nel caso di p.k. definita con «codice», la f.k. si scrive: cod + <nome entità>. Nel caso di p.k. definita con un generico codice, la f.k.si scrive: cod + <p.k.>. Esempio: p.k. = alunno; f.k. = codAlunno. Il tipo di dato, la lunghezza e il formato della chiave esterna devono essere uguali a quelli della corrispondente chiave primaria.

NOMI DELLE CHIAVI Entità con chiavi artificiali Impiegato ID_Impiegato(pk) Solo con chiave primaria id_Reparto(fk) Con chiave primaria e c. esterna Entità con chiavi artificiali Schema relazionale Impiegati [ID_Impiegato(pk),……, id_Reparto(fk)] Schema relazionale Impiegati [ID_Impiegato,……, id_Reparto*] Entità con chiavi non artificiali Impiegato CodFiscale(pk) Entità con chiave primaria Nazionalità(fk) Entità con chiave primaria e c. esterna Schema relazionale Impiegati [CodFiscale(pk),……., Nazionalità(fk)] Schema relazionale Impiegati [CodFiscale,……, Nazionalità*]

ATTRIBUTI CHE DESCRIVONO RELAZIONI Utente Utente(pk) Libro Libro(pk) Prende in prestito Utente Utente(pk) Libro Libro(pk) Prestito CodLibro(pk) CodUtente(pk) Data_Inizio Data_Fine Eseguire Trattare

Esercizi. Descrivere graficamente l’associazione Coordinare tra le entità Docente e Classe, il grado, la cardinalità, la direzione e l’esistenza delle relazioni ed inserendo gli attributi alle entità. Descrivere graficamente l’associazione Effettuare tra le entità ContoCorrente e Movimento, il grado, la cardinalità, la direzione e l’esistenza delle relazioni ed inserendo gli attributi alle entità. Proporre e descrivere graficamente associazioni valide tra le entità Artista, Città, Museo e Opera, inserendo gli attributi, una chiave primaria per ogni entità, inoltre il grado, la cardinalità, la direzione e l’esistenza delle relazioni.

REGOLE PRATICHE PER PROGETTARE UN DATABASE Un’ entità è considerata un qualunque oggetto per il quale è necessario salvare alcuni attributi oppure che deve essere rappresentato in un DB. I nomi delle entità da rappresentare devono: essere unici; avere un significato per l’ utente finale; contenere un numero minimo di parole per la descrizione. Gli attributi sono oggetti che descrivono un’ entità. Devono essere atomici, ovvero presentare un singolo fatto o una singola informazione. MATRICI TRA ENTITA’ E ATTRIBUTI Matrice entità – entità: indica le relazioni occorrenti tra le entità selezionate. Matrice entità – attributo: indica l’assegnazione degli attributi alle entità. E’ possibile individuare il tracciato record. A partire dalla matrice e-e si devono individuare le relazioni tra entità e classificarle in termini di: cardinalità, opzionalità, direzione, dipendenza (grado).

LE REGOLE DI LETTURA OGNI + <nome dell’entità di partenza> + { deve ; può } + <nome dell’associazione> + { un solo ; uno o più } + <nome dell’entità di arrivo>. Esempio. Persona Automobile Acquistare Ogni persona può acquistare una o più automobili. Ogni automobile deve essere acquistata da una sola persona. Entità Opzionalità Cardinalità

AFFINARE LO SCHEMA DI BASE Le entità devono partecipare alle relazioni Unificare le relazioni uno a uno: esempio Cittadino – Tessera Sanitaria Semplificare le relazioni molti a molti: sostituirle con un’entità associativa; esempio Utente – Libro. Eliminare le relazioni ridondanti: esempio Città – Nazione – Continente. Trasformare relazioni complesse in relazioni binarie: sostituirle con un’entità associativa, le entità originali vengono relazionate a questa nuova entità. Conoscenza Progetto necessita Impiegato possiede impegna Conoscenza Progetto Impiegato Conos/Impieg/Prog