Introduzione alle basi di dati
DA FILE DI TESTO A FILE STRUTTURATO una sequenza potenzialmente infinita di caratteri. FILE STRUTTURATO: una sequenza potenzialmente infinita di records , tutti della stessa lunghezza. RECORD: un insieme finito di informazioni diverse su uno stesso concetto di base, organizzate secondo un formato predefinito.
Il concetto di base di questo record è l' anagrafe di Mario Rossi. Esempio di record: RSSMRA58.. Mario Rossi Cosenza via Roma, 24 coniugato 12/4/58 ... Il concetto di base di questo record è l' anagrafe di Mario Rossi. Le informazioni necessarie per descrivere l'anagrafe di Mario Rossi sono: il codice fiscale, il nome e cognome, il luogo e la via di residenza, il suo stato civile, la data di nascita, ...
Esempio di file strutturato: il file strutturato che rappresenta l' anagrafe di un comune avrà la forma: RSSMRA58.. Mario Rossi Cosenza via Roma, 24 coniugato 12/4/58 ... BNCPNI54.. Pino Bianchi via P. Priamo coniugato 21/2/54 ... LNELSU36.. Luisa Leone via Roma, 21 nubile 31/5/36 ... ... dove ogni record contiene le informazioni necessarie per descrivere l'anagrafe di un cittadino.
FILE STRUTTURATO per definire un file strutturato e‘ necessario descrivere il generico record che esso contiene, cioe' descrivere le diverse categorie di informazione che caratterizzano ogni record contenuto nel file.
Consideriamo un possibile file strutturato relativo agli impiegati di un’azienda: Codice Nome Cognome DataNascita CodFiscale Qualifica 1 Paola Verdi 05/06/78 VRDPLA78… Specialista 2 Bruno Bianchi 09/09/70 BNCBRN70… Senior 3 Bianca Rossi 08/07/69 RSSBNC69.. ..... ogni record contenuto nel file deve essere composto da: un numero, che corrisponde al numero di codice, un insieme di caratteri, per il nome un insieme di caratteri per il cognome, una data, per la data di nascita, ...
OGNI INFORMAZIONE CONTENUTA IN UN RECORD SI CHIAMA CAMPO DEL RECORD. RSSMRA58.. Mario Rossi Cosenza via Roma, 24 coniugato 12/4/58 ... campi del record anagrafe di Mario Rossi
CAMPI DI UN RECORD PER DESCRIVERE UN CAMPO DI UN RECORD E' NECESSARIO FORNIRE: IL NOME DEL CAMPO IL TIPO DEI DATI CONTENUTO NEL CAMPO LA LUNGHEZZA DEL CAMPO
FORNIRE IL NOME AD UN CAMPO SIGNIFICA CAMPI DI UN RECORD FORNIRE IL NOME AD UN CAMPO SIGNIFICA COMUNICARE AL SISTEMA IL NOME DELLA INFORMAZIONE CONTENUTA IN QUEL CAMPO. Esempio: 001 Luisa Neri 5/6/52 Milano NRPL52B51 Caporeparto 12/2/80 matricola data di nascita codice fiscale qualifica nome e cognome luogo di nascita data assunzione
CAMPI DI UN RECORD assegnare un tipo di dati ad un campo significa comunicare al sistema quali dati (valori) aspettarsi in quel campo e quali operazioni si possono fare sul campo. Esempio: 001 Luisa Neri 5/6/52 Milano NRPL52B51.. Caporeparto 12/2/80 numero data sequenza di caratteri
CAMPO DI UN RECORD assegnare una lunghezza ad un campo significa comunicare al sistema quanta memoria deve riservare per quel campo. Esempio: 001 Luisa Neri 5/6/52 Milano NRPL52B51.. Caporeparto 12/2/80 15 bytes 2 bytes 8 bytes 30 bytes 15 bytes 16 bytes 8 bytes
TIPI DI DATI NUMERICO (INTERI E REALI) TESTO (SEQUENZA DI CARATTERI DI UNA CERTA LUNGHEZZA MASSIMA FISSATA) DATA (COMPOSTA DA giorno/mese/anno) BOOLEANO (SOLO DUE VALORI: SI O NO, VERO O FALSO, 1 O 0, ON O OFF)
TIPI DI DATI Esempio: testo booleano 001 Luisa Neri 5/6/52 ... SI 20000000 Caporeparto 12/2/80 ... numerici data
considerata la grande quantita' dei dati memorizzata, bisogna: permettere che diverse persone (utenti) possano accedervi garantire la consistenza delle informazioni memorizzate fornire strumenti per poter scrivere le applicazioni che usano diversi files
BASI DI DATI (DB) E SISTEMI PER LA GESTIONE DELLE BASI DI DATI (DBMS)
Cos’è un database? “Un database è un insieme di dati strutturati e permanenti raggruppati in insiemi omogenei che risultano collegati fra loro ed organizzati con la minima ridondanza per essere usati da diverse applicazioni in modo controllato” “Un database non è altro che un sistema informatico per la memorizzazione di informazioni” (Date 1986) “dati che sono memorizzati più o meno in modo permanente in un computer” (Ullman 1982)
Vantaggi di un database - riduzione della ridondanza - eliminazione delle inconsistenze - condivisione dei dati - accesso controllato ai dati - integrità dei dati - indipendenza dei dati dalle applicazioni - maggiore facilità per lo sviluppo di applicazioni
CARATTERISTICHE DI UN DBMS UN DBMS OFFRE: un "modello" per la rappresentazione dei dati e delle loro interconnessioni un linguaggio per la definizione e l'aggiornamento dei dati e delle loro interconnessioni un linguaggio per la interrogazione dei dati meccanismi per la memorizzazione ottimale dei dati
UN ACCESSO EFFICIENTE AI DATI CARATTERISTICHE DI UN DBMS UN DBMS OFFRE: MECCANISMI PER IL RECUPERO DEI DATI IN CASO DI CADUTA DEL SISTEMA UN DBMS CONSENTE: UN ACCESSO EFFICIENTE AI DATI UN ACCESSO CONTEMPORANEO DA PARTE DI PIU' UTENTI IL CONTROLLO DELL'ACCESSO AI DATI
Database Relazionali Un database relazionale è un database che viene percepito dagli utenti come una collezione di tabelle. I database relazionali sono basati sul concetto matematico di “relazioni” secondo la teoria degli insiemi. (Codd 1970)