LE BASI DI DATI BASE DI DATI Una base di dati è una raccolta di dati (archivi) organizzati per essere usati in modo efficiente da differenti applicazioni e da utenti diversi. DATABASE RELAZIONALE • È una raccolta di tabelle • Il nome relazionale deriva dal concetto matematico di relazione, che esprime un legame tra alcuni dati. • In pratica una tabella è una relazione. • Tra le tabelle esistono relazioni, associazioni: alcuni dati al loro interno permettono un collegamento logico tra loro, al fine di ottenere informazioni più complete. (es articoli e fornitori) LE INFORMAZIONI • • • in ogni sistema di vita dell’uomo vengono trattate informazioni. costituiscono un grande patrimonio, sono considerate risorse preziosissime grazie alle quali lo stesso sistema sopravvive. Individuate e raccolte devono essere memorizzate in modo che si possano facilmente : 1. 2. 3. 4. RECUPERARE AGGIUNGERE MODIFICARE CANCELLARE Teoria delle basi di dati Nell’informatica la teoria delle basi di dati studia come organizzare al meglio grandi quantità di informazioni, per poterle gestire in modo: •Semplice •Efficiente (in tempo e spazio) •Efficace •Sicuro SISTEMI INFORMATIVI E INFORMATICI Un sistema informativo è un’insieme organizzato di strumenti, procedure, risorse umane e materiali, norme organizzative, orientato alla gestione delle informazioni rilevanti per un’organizzazione. La parte del sistema informativo di un’organizzazione che è automatizzata è chiamata sistema informatico. Il sistema informatico è il sottoinsieme del sistema informativo dedicato alla gestione automatica di informazioni, rappresentate mediante dati digitali. DATI E INFORMAZIONI Il termine dato significa letteralmente fatto. I dati sono una rappresentazione dei fatti presenti in un’organizzazione. Un dato costituisce un’informazione per qualcuno se fornisce una nuova conoscenza. I dati sono utilizzabili come informazione se si attribuisce loro una chiave di interpretazione L’informazione è l’incremento di conoscenza che può essere acquisita dai dati. 0 HK555 DF456 12 89 70 Il dato 12, senza chiave di interpretazione che gli dia un significato, non costituisce informazione. PL678 BJ120 CATEGORIA ARTICOLI IN MAGAZZINO Codice articolo Quantità disponibile DF456 12 HK555 0 BJ120 89 PL678 70 ATTRIBUTI ISTANZA lo stesso dato 12 con la chiave di interpretazione “Quantità disponibile” assume il significato di “quantità disponibile per un determinato articolo” SCHEMA dei DATI Per poter usare i dati abbiamo bisogno di uno schema che ci dia la chiave di interpretazione. Lo schema sarà formato da – Un insieme di categorie (tabelle) in cui sono suddivisi i dati – Un insieme di attributi (proprietà o campi) per ciascuna categoria – Un insieme di associazioni (relazioni) tra categorie – Un insieme di vincoli di integrità che definiscono delle regole da rispettare perché i dati e le associazioni siano corretti. Vi sono: • V. impliciti (integrità sull’entità: la chiave primaria non può essere nulla; integrità referenziale: se una chiave esterna non è nulla, allora deve esistere una chiave primaria con quel valore nella tabella associata) • V.espliciti (sono i vincoli dettati dalla realtà di interesse, per es un voto deve essere compreso tra 0 e 10) In un database possiamo identificare: la struttura dei dati un insieme di regole ( cui le categorie devono sottostare) un insieme di autorizzazioni (che definiscono le operazioni consentite ai vari utenti) Data Base Management System Software applicativo (Access) Tre livelli: esterno; concettuale o logico; interno o fisico. Permette all’utente di creare uno schema, di ricercare, aggiornare o eliminare i dati da lui inseriti. Livello esterno: livello con cui interagisce l’utente. Fornisce gli strumenti per modificare e vedere i dati. DML (Data Manipulation Language) linguaggio necessario per manipolare il database, cioè inserire, cancellare o modificare i dati. QL (Query Language) linguaggio per creare interrogazioni (ricerche) sul DB. Livello logico: costituito dalla rappresentazione grafica del database, ovvero gli schemi creati dall’utente. DDL (Data Definition Language) utilizzato per descrivere le caratteristiche delle categorie dei dati e le corrispondenze tra loro. Livello fisico: Livello utilizzato solo dall’amministratore delle basi di dati (DBA), che specifica come organizzare i file necessari per la gestione del DB su memoria di massa al fine di rendere il più efficiente possibile il DB • Organizzazione dei dati in base ad uno schema. • Controllo della ridondanza (ripetizione dello stesso dato) per evitare l’incongruenza dei dati (aggiornamento parziale di dati ripetuti) e la conseguente inconsistenza dei dati (inaffidabilità dei dati). • Indipendenza fisica (si può modificare l’organizzazione del livello fisico senza modificare il livello logico) e logica (possibilità di modificare il livello logico, come aggiungere o modificare campi, senza dover modificare i programmi che utilizzano il DB). • Sicurezza e protezione dei dati (accessi protetti, possibilità di ripristino di dati e di recupero di stati inconsistenti dovuti a modifiche contemporanee dei dati). • Integrità incorporata a più livelli (di campo, di tabella e di associazione). • Garanzia di esattezza e coerenza dei dati.