Lezione V Aula Multimediale - sabato 29/03/2008
LAB utilizzo di MS Access Definire gli archivi utilizzando le regole di derivazione e descrivere le caratteristiche di ciascun archivio ASSOCIAZIONE (1:1) persona C.C
LAB utilizzo di OpenOffice Base Definire gli archivi utilizzando le regole di derivazione e descrivere le caratteristiche di ciascun archivio ASSOCIAZIONE (1:1) persona C.C
LAB utilizzo di Microsoft Access Definire gli archivi utilizzando le regole di derivazione e descrivere le caratteristiche di ciascun archivio ASSOCIAZIONE (1:N) cliente fattura
LAB utilizzo di OpenOffice Base Definire gli archivi utilizzando le regole di derivazione e descrivere le caratteristiche di ciascun archivio ASSOCIAZIONE (1:N) cliente fattura
Lezione VI Aula Multimediale - venerdì 03/04/2008
I concetti fondamentali del modello relazionale Il modello relazionale si chiama così perchè è fondato sul concetto matematico di relazione tra insiemi di oggetti RELAZIONE A1 A2. AN a1 a2. an Tupla CARDINALITA GRADO
I concetti fondamentali mod E/R Dal punto di vista matematico, dati n insiemi A1,A2,,An, si dice relazione un sottoinsieme dell insieme di tutte le n-uple a1,a2,.,an che si possono costruire prendendo nell ordine un Elemento a1 dal primo insieme A1, a2 dal secondo insieme A2, e così via Il numero N si chiama grado della relazione, gli insiemi Ai si chiamano domini della relazione, e il numero delle n-uple (indicate con il termine tuple) si chiama cardinalità della relazione RELAZIONE A1 A2. AN a1 a2. an Tupla CARDINALITA GRADO
I concetti fondamentali mod E/R La relazione viene comunemente rappresentata con una tabella avente tante colonne quanti sono i domini(grado della relazione) e tante righe quante sono le n-uple (cardinalità della relazione) i nomi dei domini sono i nomi delle colonne, i valori che compaiono in una colonna sono omogeni tra loro, cioè appartengono allo stesso dominio RELAZIONE A1 A2. AN a1 a2. an Tupla CARDINALITA GRADO
I concetti fondamentali mod E/R La relazione rappresenta un entità, ogni n-upla rappresenta un istanza dell entità, le colonne contengono gli attributi dell entità, il dominio è l insieme dei valori che possono essere assunti da un attributo La chiave della relazione è un attributo o una combinazione di attributi che identificano univocamente le n-uple all interno della relazione, cioè ogni riga della tabella possiede valori diversi per l attributo (o gli attributi) chiave. RELAZIONE A1 A2. AN a1 a2. an Tupla CARDINALITA GRADO
I concetti fondamentali mod E/R Tutte le righe della tabella contengono lo stesso numero di colonne, corrispondenti agli attributi Gli attributi rappresentano informazioni elementari(atomiche), non scomponibili ulteriormente cioè non ci sono campi di gruppo che contengono per ogni riga un insieme di valori anziché 1 I valori assunti da un campo appartengono al dominio dei valori possibili per quel campo e quindi sono valori omogenei tra loro, cioè sono dello stesso tipo In una relazione ogni riga è diversa da tutte le altre (non possibile che i valori dei campi siano tutti uguali). Esiste 1 attributo (o una sua combinazione) che identificano univocamente la n-upla e che assumono perciò la funzione di chiave primaria della relazione diversi per l attributo (o gli attributi) chiave. Le n-uple compaiono nella tabella senza un ordine prefissato (non è rilevante) A1 A2. AN a1 a2. an Tupla CARDINALITA GRADO
Le operazioni relazionali In generale gli operatori relazionali agiscono su una relazione per ottenenre una nuova relazione. In sostanza le operazioni relazionali consentono di effettuare le interrogazioni alla base di dati per ottenere le informazioni desiderate estraendo da una tabella una sottotabella oppure combinando tra loro due o più tabelle e generando così nuove relazioni cliente fattura
Le relazioni Cliente e Fattura L associazione uno a molti viene rappresentata aggiungendo alla relazione Fattura l attributo Codice_Cliente come chiave esterna cliente fattura Codice_cliente Codice_fattura Codice_cliente
Le operazioni relazionali La selezione (select) genera una nuova relazione costituita solo dalle n-uple della relazione di partenza che soddisfano una determinata condizione GRADO: lo stesso della relazione di partenza CARDINALITA : minore o uguale a quella di partenza ESEMPIO: elenco dei clienti di Milano x a1 b1 y a2 b2 z a3 b3 w a4 b4 y a2 b2 z a3 b3
Le operazioni relazionali La Proiezione (project) genera una nuova relazione estraendo dalla tabella iniziale due o più colonne corrispondenti agli attributi prefissati GRADO: nella relazione risultante il grado è minore o uguale al grado della relazione di partenza CARDINALITA : nella relazione risultante la cardinalità di norma è uguale a quella di partenza ESEMPIO: elenco nome e cognome dei clienti x y z x y z
Le operazioni relazionali La congiunzione (join)serve a combinare 2 relazioni aventi 1 o + attributi in comune, generandouna nuova relazione che contiene le righe della prima e della seconda tabella che possono essere combinate secondo I valori uguali dell attributo comune GRADO: il grado della relazione generata è uguale a N1+N2 1 (attributo comune) CARDINALITA : non è prevedibile a priori ESEMPIO: elenco delle fatture in data Y dei clienti di Milano a1 b1 b0 c0 a1 b1 c1 a2 b2 b1 c1 a2 b2 c2 a3 b3 b2 c2
Lezione VII Aula Multimediale - sabato 04/04/2008
LAB utilizzo di Microsoft Access Utilizzo dello strumento: Query Proiezione Selezione congiunzione cliente fattura
LAB utilizzo di OpenOffice Base Utilizzo dello strumento: Ricerche Proiezione Selezione congiunzione cliente fattura
Lezione VIII Aula Multimediale - venerdì 11/04/2008
La gestione del DB: DBMS Il DBMS (Database management system) è il software che permette di costruire e gestire una base di dati IL DBMS costituisce un interfaccia tra gli utenti di un database con le loro applicazioni e l hardware DBMS DB
La gestione del DB: DBMS Le funzioni che il DBMS attraverso I suoi moduli software è in grado di offrire agli utenti del DB sono: 1. Implementazione del mod.logico (definizione dei dati e strutture dati) Definizione dei sottoschemi (viste o tabelle virtuali, rispetto alle tabelle primarie) Organizzazione fisica dei dati (ottimizzando occupazione e tempi di accesso) 2. Manipolazione e interrogazione dei dati Inserimento, modifica e cancellazione Interfaccia tra I linguaggi di programmazione (visual basic, asp etc.) e il DB Accesso ai dati tramite interrogazione
La gestione del DB: DBMS Le funzioni che il DBMS attraverso I suoi moduli software è in grado di offrire agli utenti del DB sono: 3. Controllo dell integrità dei dati Integrità sulle entità Integrità referenziale Integrità definite dall utente (vincoli specifici definiti dall utente sul DB) 4. Sicurezza e protezione Sicurezza da interventi dolosi o colposi (SW/HW) recovery Controllo degli accessi (autorizzazioni)
La gestione del DB: DBMS Le prestazioni del DBMS vengono attivate dall utente usando appositi comandi che costituiscono a tutti gli effetti un LINGUAGGIO I comandi che il DBMS mette a disposizione possono essere classificate nelle seguenti categorie di linguaggi DDL (data definition language) ling. per la descrizione dei dati,tabelle, viste cioè per la creazione della struttura fisica del DB DML (data manipulation lang.) ling. per il trattamento dei dati (ins,mod,canc) DCL (data control lang.) ling. per stabilire le autorizzazione agli accessi e I tipi di permessi consentiti QL (query lang) ling. per le interrogazioni
La gestione del DB: SQL L insieme completo di comandi dei DDL,DML,DCL,QL viene definito Linguaggio per basi di dati Esiste uno standard di tale linguaggio : SQL (Structured Query Language) L'SQL nasce nel 1974 ad opera di Donald Chamberlin, nei laboratori dell IBM. Nel 1981 IBM iniziò a vendere alcuni prodotti relazionali e nel 1983 rilasciò DB2, il suo DBMS relazionale diffuso ancor oggi. SQL divenne subito lo standard industriale per i software che utilizzano il modello relazionale. L ANSI (american national standard institute) lo adottò come standard fin dal 1986, senza apportare modifiche sostanziali alla versione inizialmente sviluppata da IBM. Nel 1987 la ISO fece lo stesso. Questa prima versione standard è denominata SQL/86. Negli anni successivi si realizzarono altre versioni, che furono SQL/89, SQL/92 e SQL/2003
Es DDL La gestione del DB: SQL CREATE TABLE PERSONALE (MATRICOLA CHAR(5), COGNOME CHAR(30), NOME CHAR(20), ASSUNTO DATE, LIVELLO SMALLINT, PROV CHAR(2) );
La gestione del DB: SQL L SQL utilizza I caratteri alfabetici, le cifre decimali gli operatori aritmetici più altri caratteri speciali Gli identificatori (nomi di tabelle e attributi) sono sequenze di caratteri (max 18) devono iniziare con una lettera e possono contenere _ Quando è necessario identificare il nome di un attributo della tabella si deve usare la notazione Nometabella.nomeattributo
Es QL La gestione del DB: SQL SELECT COGNOME, NOME FROM PERSONALE WHERE PROV= SS