1. Qual è il significato generale di base di dati? Con il termine basi di dati (in inglese database) si indicano in informatica gli archivi di dati, organizzati in modo integrato attraverso tecniche di modellazione dei dati e gestiti sulle memorie di massa dei computer attraverso appositi software, per trovare e lavorare meglio i dati 2. Spiegare il significato dei termini consistenza, sicurezza, integrità riferiti ai dati. 3. Consistenza = i dati contenuti negli archivi devono essere significativi ed essere effettivamente utilizzabili nelle applicazioni dell’azienda. Sicurezza = i dati devono essere protetti per evitare perdite accidentali dovute a cadute del sistema, guasti hardware ecc. significa perciò impedire che il database venga danneggiato da interventi accidentali o non autorizzati. Integrità = significa garantire che le operazioni effettuate sul database da utenti autorizzati non provochino una perdita di consistenza ai dati. Quale differenza esiste tra un database e un DBMS? I prodotti software per la gestione di database vengono indicati con il termine DBMS (DataBase Management System). I DBMS consentono quindi all’utente di collocarsi in una posizione più lontana dall’hardware, dalle memorie di massa e dal Sistema Operativo e più vicina all’applicazione che utilizza i dati contenuti negli archivi. A questo proposito si tenga ben presente anche la differenza tra database, come insieme di dati, e DBMS, come sistema per la gestione del database. 4. Che cosa si intende con database distribuito? Gli archivi integrati che costituiscono la base di dati aziendali possono risiedere su un unico PC oppure possono essere distribuiti sulle memorie di massa di computer diversi facenti parte di una rete aziendale, i cui nodi possono essere anche fisicamente lontani: in questo caso si parla di database distribuiti. Gli utenti della base di dati elaborano in modo locale gli archivi che hanno a disposizione nel proprio sistema e nello stesso tempo hanno accesso in modo remoto a sistemi centrali attraverso le linee di comunicazione. 5. Perché la ridondanza è dannosa per l’organizzazione degli archivi di dati? Quando si vogliono associare tra loro i dati contenuti in due diversi archivi, può capitare che si verifichi ridondanza ossia la descrizione di uno dei due archivi venga ripetuta all’interno dell’altro. Gli stessi dati appaiono in modo duplicato, e ciò può portare all’incongruenza: nel caso in cui un dato venga aggiornato in un archivio e non nell’altro oppure siano presenti valori diversi per lo stesso dato. Ciò causa inconsistenza dei dati cioè alla loro inaffidabilità. 6. Quali sono i limiti principali dell’organizzazione dei dati in archivi non integrati? 7. Quali sono le caratteristiche e i vantaggi dell’organizzazione integrata degli archivi? 8. I programmi sono legati agli archivi che li gestiscono ossia tutti i linguaggi di programmazione richiedono la specificazione della struttura degli archivi e del loro record. Ciò significa che modificato un record bisogna procedere alla modifica dei programmi che usano quel tipo di record. Alcuni dati si presentano più volte in archivi diversi come campi di record differenti – ridondanza di dati. L’accesso ai dati è determinata dal tipi di organizzazione assegnata agli archivi. Indipendenza della struttura fisica e logica dei dati:i programmi applicativi sono indipendenti dai dati fisici e dalla struttura logica con cui i dati sono organizzati negli archivi Facilità di accesso e utilizzo da parte di più utenti con i loro differenti programmi Eliminazione della ridondanza e dell’inconsistenza Integrità dei dati: controlli per evitare anomalie ai dati causate dai programmi e dalle applicazioni degli utenti. Uso di linguaggi per la gestione dei database: il DB viene gestito attraverso comandi per manipolazione e interrogazione dei dati. Che cosa si intende con flat file? Database con struttura di dati formata da un unico file. È adatta solo per basi di dati estremamente semplici e non è efficiente per la maggior parte delle applicazioni di gestione. 9. Quali sono le caratteristiche del modello gerarchico? Il modello gerarchico è particolarmente usato per rappresentare situazioni in cui si abbiano entità che stanno “in alto” e “in basso” secondo uno schema ad albero nel quale i nodi presentano le entità gli archi le associazioni. Una struttura gerarchica è un insieme ordinato di alberi (un unico record radice e sottoalberi di livello inferiore) 10. Quali differenze presenta il modello reticolare rispetto al modello gerarchico? Nel modello reticolare le entità presentano i nodi, le associazioni gli archi di uno schema a grafo orientato: si tratta di un’estensione del modello gerarchico in quanto sono consentite associazioni tra entità che stanno vin basso con quelle in alto e non solo dall’alto verso il basso come nel modello gerarchico. 11. Quali vantaggi vengono introdotti dall’uso dei fondamenti matematici nel modello relazionale? Utilizzare un linguaggio conosciuto a livello universale, ossia quello matematico; Eliminare i problemi di ambiguità della terminologia e nella simbologia. 12. Fornire la definizione di relazione matematica. Dati n insiemi A1,A2,A3…An si dice relazione matematica un sottoinsieme di tutti i record a1,a2,a3.. an che si può costruire prendendo un elemento a1 dall’insieme A1, a2 da quello A2 e così via..è quindi una collezione di record ciascuno dei quali contiene i valori di un numero prefissato di colonne. 13. Quali sono i requisiti fondamentali di una relazione? Tutte le righe della tabella contengono lo stesso numero di colonne corrispondenti agli attributi Gli attributi rappresentano informazioni elementari non scomponibili ulteriormente I valori assunti da un campo sono omogenei tra loro cioè dello stesso tipo In una relazione ci deve essere una chiave primaria Le n-uple compaiono secondo un ordine prefissato 14. Perché in una relazione è presente la chiave? La chiave identifica in modo univoco un record all’interno della relazione. 15. Che cosa significa integrità sull’entità? Entity integrity nessuna componente della chiave primaria può avere valore nullo. 16. In generale, qual è il risultato di un’operazione relazionale? In generale gli operatori relazionali agiscono su una relazione per ottenere una nuova relazione, consentono di effettuare le interrogazioni alla base di dati per ottenere le informazioni desiderate. 17. Che cosa si ottiene con le operazioni di selezione, proiezione e congiunzione? Selezione: genera una nuova relazione costituita dalle n-uple della relazione di partenza che soddisfano una determinata relazione. Vengono cioè selezionate le righe con i valori corrispondenti alla condizione prefissata. Proiezione: genera una nuova rekazione estraendo dalla tabella di partenza due o più colonne corrispondenti agli attributi prefissati. La tabella ottenuta potrebbe contenere alcune righe uguali. Congiunzione: serve a combinare due relazioni aventi uno o più attributi in comune, generando una nuova relazione contenente sia i dati della prima che della seconda tabella. 18. Specificare il grado e la cardinalità della tabella risultante per ognuna delle tre operazioni relazionali. Selezione: grado: la relazione ottenuta possiede tutte le colonne della relazione di partenza perciò ha lo stesso grado; cardinalità: la cardinalità può essere minore o uguale alla tabella di partenza; Proiezione: grado: la relazione ottenuta è minore o uguale al grado della tabella di partenza; cardinalità: la cardinalità è uguale a quella di partenza; Congiunzione: grado: se i gradi della tabella di partenza sono N1 e N2 il grado risultante sarà N1+N2-1 ; cardinalità: non è prevedibile a priori in quanto si ottengono solo le righe che possono essere combinate attraverso i valori presenti in entrambe. 19. Quali operazioni si possono fare su tabelle aventi la stessa struttura? Si possono eseguire operazioni su tabelle con colonne con lo stesso numero,tipo e ordine di attributi. Si crea una nuova relazione interna che viene usata da un’operazione più esterna. Le operazioni possibili sono: Unione: per ottenere una nuova tabella che contiene le righe della prima e della seconda tabella con una riduzione a una di quelle ripetute. Intersezione: genera una nuova tabella che contiene solo le righe comuni. Differenza: genera una nuova tabella che contiene solo le righe della prima tabella che non sono presenti nella seconda. Questa operazione non è commutativa. 20. Come si può definire la normalizzazione? Per evitare la ripetizione e la ridondanza dei dati, a partire da una relazione vengono create altre relazioni secondo un processo definito di normalizzazione: si tratta di un processo formalizzato che consente la trasformazione delle tabelle in singoli oggetti della realtà rappresentata con il modello del database. Le regole di normalizzazione sono definite per evitare l’inconsistenza dei dati e le anomalie nelle operazioni di aggiornamento. 21. Spiegare il significato dei termini chiave, chiave candidata, determinante. La chiave o chiave primaria è l’insieme di uno o più attributi che identificano in modo univoco una n-upla ossia un record, La chiave candidata è l’insieme di uno o più attributi che possono svolgere la funzione di chiave (ci sono molte chiavi candidate ma una sola primaria), Si parla di determinante riferito ad una dipendenza funzionale: quando tra due attributi uno determina il valore dell’altro si dice che A1 è determinante per A2 e si indica così: A1 A2 22. Qual è il significato di dipendenza funzionale e transitiva? Dipendenza funzionale: si parla di dipendenza funzionale quando tra due attributi uno determina il valore dell’altro, A1 è determinante per A2 oppure A2 DIPENDE FUNZIONALMENTE da A1. Dipendenza transitiva: dati tre attributi se A2 dipende da A1 e A3 dipende da A2 allora A3 dipende in modo transitivo da A1. 23. Quando una relazione si dice in prima forma normale? Una relazione si dice in prima forma normale quando: tutte le righe della tabella contengono lo stesso numero di colonne, gli attributi rappresentano informazioni elementari I valori che appaiono in una colonna sono dello stesso tipo e quindi hanno lo stesso dominio Ogni riga è diversa dalle altre L’ordine con cui appaiono le righe è irrilevante. 24. Quali problemi vengono risolti con la seconda forma normale? Elimina la dipendenza parziale degli attributi dalla chiave e riguarda il caso di chiavi composte cioè che sono formate da più attributi. 25. Quale dipendenza viene eliminata con la terza forma normale? Con la terza forma normale viene eliminata la dipendenza transitiva. 26. Che cosa si intende con forma normale di Boyce-Codd? Una relazione si dice in forma di Boyce-Codd se è in seconda forma normale e ogni determinante è una chiave candidata e quindi può svolgere la funzione di chiave. 27. Quali sono i vantaggi offerti dal passaggio alle forme normali superiori alla prima? Le forme normali superiori alla prima si ottengono vantaggi in quanto si eliminano i problemi dovuti alle operazioni di aggiornamento e cancellazione evitando l’inconsistenza o la perdita dei dati. 28. Spiegare il significato di integrità referenziale. Si tratta di un insieme di regole del modello relazionale che garantiscono l’integrità dei dati quando si hanno relazioni associate tra loro attraverso la chiave esterna. Queste regole servono per rendere valide le associazioni tra le tabelle e si eliminano i problemi dovuti alle operazioni di aggiornamento e cancellazione evitando l’inconsistenza o la perdita dei dati. 29. Quali regole pratiche vengono introdotte applicando l’integrità referenziale? Non è possibile immettere un valore nella chiave esterna della tabella associata se tale valore non esiste tra le chiavi della tabella primaria. Non è possibile eliminare un record dalla tabella primaria. Non si può modificare il valore della chiave nella tabella primaria se ad essa corrispondono delle righe. 30. Quali funzionalità vengono messe a disposizione con un prodotto DBMS? I DBMS permettono: Implementazione del modello logico sul sistema di elaborazione (definizioni dei dati e delle strutture derivate dallo schema logico e organizzazione fisica sui supporti di massa), Manipolazione e interrogazione dei dati, Controllo dell’integrità dei dati, Sicurezza 31. Che cosa si intende con vista? Si tratta di definire dei sottoschemi ossia visioni del database legate alle applicazioni degli utenti e che quindi gli permettono agli utenti di risalire ai dati che ritengono importanti. 32. A che cosa serve il dizionario del database? Il dizionario contiene i metadati cioè dati che descrivono i dati organizzati nel database. 33. Quali attività possono essere svolte con un linguaggio DML? Consente le usuali operazioni di accesso per inserimenti modifiche e cancellazioni. 34. Quali sono le caratteristiche dei linguaggi per basi di dati? Ci si riferisce all’insieme completo di comandi che consentono e facilitano le operazioni di definizione del database di manipolazione e interrogazione da parte degli utenti. 35. Quali sono i compiti dell’amministratore della base di dati? È il responsabile nella gestione del database, autorizza gli accessi e provvede alla manutenzione del database. 36. Quali sono gli utenti del database? Programmatori e utenti finali.