MODELLO RELAZIONALE. cesarini-bdsi mod relazionale 1 MODELLO RELAZIONALE
|
|
- Michela Benedetti
- 7 anni fa
- Visualizzazioni
Transcript
1 MODELLO RELAZIONALE Definizione di relazione Schema e istanza Chiave Valori nulli Predicati e vincoli di integrità Vincolo di integrità referenziale cesarini-bdsi mod relazionale 1 MODELLO RELAZIONALE E.F.Codd A relational model for large shared data banks, Communication of ACM, vol.13, n.6, pp , 1970 Da allora fino alla metà degli anni 80 la ricerca sulle basi di dati è stata caratterizzata dallo studio teorico di vari aspetti riguardanti il modello, dalla ricerca di tecniche efficienti per la sua implementazione Primi prototipi realizzati agli inizi anni 70; dalla metà degli anni 80 i sistemi relazionali risultano dominanti sul mercato INGRES, SYSTEM R, DB2, ORACLE, INFORMIX, MYSQL, ACCESS cesarini-bdsi mod relazionale 2 1
2 RELAZIONE - definizione Consideriamo un insieme di attributi X = {X 1, X 2, X n } X i è un nome, una stringa Es: nome, indirizzo, codice, xyz, titolo, sposato Un insieme di domini base D = {D 1, D 2, D m } D i è un insieme di valori atomici Es: int, real, char, string, boolean, Una funzione dom che associa ad ogni X i un D j dom(x i ) = D j Es: dom(codice) = int, dom(titolo) = string, dom(sposato) = boolean Tupla (tuple): dato X = {X 1, X 2, X n } una tupla su X è una n-pla di coppie [X 1 :v 1, X 2 :v 2, X n :v n ] tali che v i dom(x i ) cesarini-bdsi mod relazionale 3 RELAZIONE - definizione Esempio di tupla X = { libro_id, titolo, autore} dom(libro_id) = int, dom(titolo) = string, dom(autore) = string [libro_id: 321, titolo: codice a zero, autore: Ken Follett ] Relazione: una relazione è un insieme di tuple definite sullo stesso insieme di attributi Es: {[libro_id: 321, titolo: codice a zero, autore: Ken Follett ], [ libro_id: 128, autore: Umberto Eco, titolo: il nome della rosa]} Rappresentazione tabellare di una relazione libro_id autore titolo _ 321 Ken Follett codice a zero 128 Umberto Eco il nome della rosa cesarini-bdsi mod relazionale 4 2
3 RELAZIONE Rappresentazione di una relazione in forma tabellare: Colonne: ogni colonna è associata ad un attributo Righe: ogni riga rappresenta una tupla L ordine delle colonne e l ordine delle righe non hanno importanza (nella definizione si parla di insiemi ) Non ci sono righe duplicate Arietà di una relazione: numero di attributi su cui è definita (numero delle colonne nella tabella) Cardinalità di una relazione: numero delle tuple che la costituiscono (numero delle righe nella tabella) cesarini-bdsi mod relazionale 5 SCHEMA / ISTANZA Schema di relazione: R(X) R è un nome di relazione X = {A 1, A 2, A n } è un insieme di attributi Ogni attributo ha associato il proprio dominio Schema di base di dati: B = {R 1 (X 1 ), R 2 (X 2 ), R k (X k )} insieme di schemi di relazione Istanza di relazione su uno schema R(X): r un insieme di tuple su X Istanza di base di dati su uno schema B: b b = {r 1,, r k } r i istanza di R i (X i ) cesarini-bdsi mod relazionale 6 3
4 SCHEMA/ISTANZA esempio Schema LIBRO(inv, autore, titolo) dom(inv) = UTENTE(codfisc, nome, cognome, ind) dom(codfisc) = PRESTITO(libro, utente, data-prest, data-rest) dom(libro) = Istanza libro inv autore titolo _ 124 Umberto Eco Il nome della rosa 125 Ken Follett Codice a zero utente codfisc nome cognome ind _ RSSFRN54T60B028I Franco Rossi Prato BNCCHR80B46F051D Chiara Bianchi Empoli prestito libro utente data-prest data-rest _ 125 RSSFRN54T60B028I 24/10/01 3/12/01 cesarini-bdsi mod relazionale 7 notazione X un insieme di attributi t una tupla t[x] valori che la tupla t assume in corrispondenza degli attributi X Es: t: [inv: 125, autore: Ken Follett, titolo: Codice a zero ] t[inv] = 125 t[autore, titolo] = Ken Follett, Codice a zero Nota: quando non necessario non indicheremo esplicitamente la funzione dom cesarini-bdsi mod relazionale 8 4
5 CHIAVE Chiave candidata: un insieme di attributi X di R tali che In qualsiasi istanza r di R non possono esistere due tuple t e t tali che t[x] = t [X] La proprietà precedente non vale per nessun sottoinsieme proprio di X Attributo primo: attributo che appare almeno in una chiave candidata Chiave primaria: fra le chiavi candidate ne viene scelta una come chiave primaria Es: PERSONA (cod_fisc, num_sanitario, nome, cognome, età) Chiavi candidate: cod_fisc num_sanitario Superchiave: insieme di attributi che include una chiave cesarini-bdsi mod relazionale 9 CHIAVE - esempi AUTORE (nome, nazionalità, data-nascita, data-morte) Chiave: nome, nazionalità, data-nascita, data-morte AUTORE (codice, nome, nazionalità, data-nascita, data-morte) Chiave: codice STUD (matricola, nome, indirizzo) Chiave: matricola se siamo in uno specifico ateneo STUD ( matricola, ateneo, nome, ind) Chiave: matricola, ateneo ad esempio in una biblioteca cui accedono studenti di vari atenei STUD (matricola, ateneo, cod-fisc, nome, ind) Chiave: matricola, ateneo Chiave: cod-fisc cesarini-bdsi mod relazionale 10 5
6 Schemi su cui discutere la chiave LIBRO (inv, autore, titolo) STUDENTE (matricola, nome, cognome, corso_di_laurea) PRESTITO (libro, studente, data-prestito, data-restituzione) dom(libro.inv) = dom(prestito.libro) dom(studente.matricola) = dom(libro.studente) FORNITORE (codice, nome, indirizzo) ORDINE (numero, fornitore, data) DETTAGLI (num-ordine, articolo, quantità) dom(fornitore.codice) = dom(ordine.fornitore) dom(dettagli.num-ordine) = dom(ordine.numero) PAZIENTE (cod-san, cod-fisc, nome, cognome, indirizzo) MEDICO (codice, nome, cognome, cod-fiscale, p-iva) VISITA (medico, paziente, data) dom(medico.codice) = dom(visita.medico) dom(visita.paziente) =? APPUNTAMENTO (cliente, operatore, servizio, data, ora) cesarini-bdsi mod relazionale 11 VALORI NULLI Assenza di valore in una tupla per un attributo A: valore nullo, NULL NULL D i i Motivazione valori nulli: Valore sconosciuto esiste ma non lo conosciamo Valore inesistente attributo inapplicabile Senza informazione può esistere o no, se esiste non lo conosciamo CITTA -PREF CAMPIONI città ind-prefettura _ Roma via IV novembre Firenze NULL sconosciuto Empoli NULL inapplicabile nome data-nasc data-morte Rossi 17/10/ /9/1982 Bianchi NULL 3/10/1958 sconosciuto Verdi 14/8/1940 NULL sconosciuto inappl. cesarini-bdsi mod relazionale 12 6
7 VINCOLI DI INTEGRITA Predicato che associa ad ogni istanza (di relazione o di base di dati) il valore VERO o FALSO Istanza che soddisfa i vincoli di integrità: corretta, legale Esempi di vincoli: di dominio 18 voto 30 età 110 di tupla (NOT (lode = si )) OR (voto = 30) di chiave t[cod-fisc] t [cod-fisc] Vincolo di integrità di una entità La chiave primaria di una relazione non può avere valore nullo o una componente nulla Se un sistema permette di definire dei vincoli di integrità, ogni aggiornamento dei dati che li viola viene rifiutato cesarini-bdsi mod relazionale 13 PREDICATI Predicato semplice A op c con A attributo, c dom(a), op {<,<=,=,>,>=,<>} A op B con A e B attributi con domini confrontabili nota: altri operatori utilizzabili in SQL verranno introdotti successivamente Predicato composto predicato che combina predicati semplici tramite gli operatori logici AND, OR, NOT Esempi (voto>=18) AND (voto<=30) invio= posta OR invio= fax (media>=27) AND (ccl= geologia OR ccl= biologia ) stipendio>200 AND anzianità<3 città-nascita=città-residenza I predicati vengono usati per definire vincoli di integrità (di dominio o di tupla) per definire condizioni di selezione (come vedremo) cesarini-bdsi mod relazionale 14 7
8 VALUTAZIONE DEI PREDICATI Tabelle di verità (v = vero, f = falso) AND v f OR v f NOT v f v v f v v v f v f f f f v f La valutazione di un predicato semplice dà luogo a uno dei valori vero o falso I predicati composti vengono valutati applicando gli operatori logici (cfr. tabelle di verità) ai valori ottenuti dai predicati semplici Ordine di valutazione degli operatori logici: NOT, AND, OR Possono essere usate le parentesi per specificare un preciso ordine di valutazione cesarini-bdsi mod relazionale 15 VINCOLO DI INTEGRITA REFERENZIALE Consideriamo due schemi R1 e R2; siano X = A 1 A 2 A p un insieme di attributi di R1 K = B 1 B 2 B p la chiave primaria di R2 si ha un vincolo di integrità referenziale tra l insieme X di R1 e la chiave K di R2 se in ogni istanza della base di dati si ha che per ogni tupla t 1 di r1 esiste una tupla t 2 di r2 tale che t 1 [A i ] = t 2 [B i ] i = 1, 2, p Nota: i domini di A i e B i devono essere uguali X è chiamata chiave esterna (foreign key) di R1 cesarini-bdsi mod relazionale 16 8
9 INTEGRITA REFERENZIALE esempi LIBRO (inv, autore, titolo) STUDENTE (matr, nome, cognome, Ccl) PRESTITO (libro, stud, data) PRESTITO.libro ref LIBRO.inv Ogni valore che compare in PRESTITO.libro deve comparire anche in LIBRO.inv, ma non il viceversa I libri che vengono dati in prestito devono essere inventariati nell archivio LIBRO; ci possono essere libri che nessuno ha chiesto in prestito PRESTITO.stud ref LIBRO.inv ORDINE (num, fornitore, data) DETTAGLI (num-ordine, articolo, quantità) FORNITORE (codice, nome, indirizzo) DETTAGLI.num-ordine ref ORDINE.num ORDINE.fornitore ref FORNITORE.codice cesarini-bdsi mod relazionale 17 INTEGRITA REFERENZIALE esempi PAZIENTE (codice-san, nome, cognome, ind, cod-fisc) MEDICO (codice, nome, cognome, fisc, p-iva) VISITA (medico, paziente, data) VISITA.medico ref MEDICO.codice VISITA.paziente ref PAZIENTE.codice-san) STUDENTE (matr, nome, indirizzo, corso_di_laurea) CORSO (codice, nome, prof) ESAME (matr, corso, voto, data) ESAME.matr ref STUDENTE.matr ESAME.corso ref CORSO.codice cesarini-bdsi mod relazionale 18 9
10 Trattamento del vincolo di integrità referenziale FORNITORE(codice, nome, indirizzo) ORDINE (num, fornitore, data) ORDINE.fornitore ref FORNITORE.codice Inserimento non si può inserire nella tabella ORDINE una riga con un valore di fornitore che non compare come codice in una riga di FORNITORE database valido: FORNITORE codice nome indirizzo ORDINE num fornitore data _ 212 Rossi FI /3/ Bianchi NA /7/ /8/01 L inserimento in ORDINE della tupla [ /2/02] viene rifiutato dal sistema cesarini-bdsi mod relazionale 19 Trattamento del vincolo di integrità referenziale FORNITORE(codice, nome, indirizzo) ORDINE (num, fornitore, data) ORDINE.fornitore ref FORNITORE.codice FORNITORE codice nome indirizzo ORDINE num fornitore data _ 212 Rossi FI /3/ Bianchi NA /7/ /8/01 Cancellazione - supponiamo di cancellare dalla tabella FORNITORE la riga relativa al fornitore 212 default: la cancellazione viene rifiutata dal sistema perché risulterebbe una violazione del vincolo cascade: la riga viene cancellata ma vengono anche cancellate da ORDINE tutte le righe con fornitore = 212 nota:queste sono le opzioni previste da ACCESS cesarini-bdsi mod relazionale 20 10
11 Trattamento del vincolo di integrità referenziale FORNITORE(codice, nome, indirizzo) ORDINE (num, fornitore, data) ORDINE.fornitore ref FORNITORE.codice FORNITORE codice nome indirizzo ORDINE num fornitore data _ 212 Rossi FI /3/ Bianchi NA /7/ /8/01 Modifica - supponiamo di modificare nella tabella FORNITORE il codice 217 in 218 default: la modifica viene rifiutata dal sistema perché risulterebbe una violazione del vincolo cascade: la modifica viene accettata ma vengono anche modificati in ORDINE tutti i valori 217 di fornitore in 218 nota:queste sono le opzioni previste da ACCESS cesarini-bdsi mod relazionale 21 11
Lo schema concettuale risultante dalla progettazione concettuale è l input alla fase di progettazione logica.
Progettazione logica Lo schema concettuale risultante dalla progettazione concettuale è l input alla fase di progettazione logica. La progettazione logica è basata su un particolare modello logico dei
DettagliBasi di dati. Il Modello Relazionale dei Dati. K. Donno - Il Modello Relazionale dei Dati
Basi di dati Il Modello Relazionale dei Dati Proposto da E. Codd nel 1970 per favorire l indipendenza dei dati Disponibile come modello logico in DBMS reali nel 1981 (non è facile realizzare l indipendenza
DettagliMODELLO RELAZIONALE. Introduzione
MODELLO RELAZIONALE Introduzione E' stato proposto agli inizi degli anni 70 da Codd finalizzato alla realizzazione dell indipendenza dei dati, unisce concetti derivati dalla teoria degli insiemi (relazioni)
DettagliVincoli di integrità
Vincoli di integrità Non tutte le istanze di basi di dati sintatticamente corrette rappresentano informazioni plausibili per l applicazione di interesse Studenti Matricola Nome Nascita 276545 Rossi 23-04-72?
DettagliDB - Modello relazionale dei dati. DB - Modello Relazionale 1
DB - Modello relazionale dei dati DB - Modello Relazionale 1 Definizione Un modello dei dati è un insieme di meccanismi di astrazione per definire una base di dati, con associato un insieme predefinito
DettagliBasi di Dati e Sistemi Informativi. Progettazione logica: Il modello relazionale
Basi di Dati e Sistemi Informativi Progettazione logica: Il modello relazionale Corso di Laurea in Ing. Informatica Ing. Gestionale Magistrale Introduzione Basato sul lavoro di Codd (~1970) E attualmente
DettagliIl Modello Relazionale
Il Modello Relazionale Il modello relazionale 1 Il modello relazionale Proposto da E. F. Codd nel 1970 per favorire l indipendenza dei dati e reso disponibile come modello logico in DBMS reali nel 1981
DettagliMAX, SUM, AVG, COUNT)
INTRODUZIONE A SQL Definizione di tabelle e domini Alcuni vincoli di integrità Struttura base SELECT FROM WHERE Funzioni di aggregazione (MIN, MAX, SUM, AVG, COUNT) Query da più tabelle (FROM R1, Rk) Join
DettagliIL MODELLO RELAZIONALE
IL MODELLO RELAZIONALE E i vincoli per le basi di dati relazionali 2 La storia Introdotto nel 1970 da E. F. Ted Codd http://en.wikipedia.org/wiki/edgar_f._codd (centro ricerche IBM) Codd, E.F. (1970).
DettagliInformatica. Il modello relazionale: Relazioni e tabelle. Relazioni con attributi
Informatica Basi di dati parte 3 Basi di dati relazionali: relazioni, tabelle, chiavi, vincoli Lezione 9 Laurea magistrale in Scienze della mente Laurea magistrale in Psicologia dello sviluppo e dell'educazione
DettagliDatabase: collezione di fatti, registrabili e con un ben preciso significato, relazionati fra di loro
Database relazionali: un'introduzione Database: collezione di fatti, registrabili e con un ben preciso significato, relazionati fra di loro Rappresentazione astratta di aspetti del mondo reale (Universe
DettagliIl modello relazionale dei dati e stato introdotto da Codd. nel 1970 (E.F. Codd, \A relational model of data for large
Modello Relazionale Il modello relazionale dei dati e stato introdotto da Codd nel 1970 (E.F. Codd, \A relational model of data for large shared data banks", Comm. of the ACM, 1970) ed e basato sul concetto
DettagliModulo 2 Data Base 2
Modulo 2 Data Base 2 Università degli Studi di Salerno Corso di Laurea in Scienze della comunicazione Informatica generale Docente: Angela Peduto A.A. 2004/2005 Relazioni: riepilogo Relazione : concetto
DettagliModello Relazionale. Modello Relazionale. Relazioni - Prodotto Cartesiano. Relazione: tre accezioni. Es. Dati gli insiemi
Modello Relazionale Modello Relazionale Proposto agli inizi degli anni 70 da Codd Finalizzato alla realizzazione dell indipendenza dei dati Unisce concetti derivati dalla teoria degli insiemi (relazioni)
DettagliBasi di dati. Il Linguaggio SQL. K. Donno - Il Linguaggio SQL
Basi di dati Il Linguaggio SQL Data Definition Language (DDL) Data Definition Language: insieme di istruzioni utilizzate per modificare la struttura della base di dati Ne fanno parte le istruzioni di inserimento,
DettagliElena Baralis 2013 Politecnico di Torino 1
Modello relazionale Docente M2170 Fondamenti di informatica Verdi M4880 Sistemi di elaborazione Bianchi F0410 Basi di dati Neri Docenti Nome Dipartimento Telefono Verdi Informatica 123456 Bianchi Elettronica
DettagliCardinalità e identificatori. Informatica. Generalizzazioni. Generalizzazioni. Generalizzazioni. Generalizzazioni
e identificatori Codice (0,1) (1,1) Dirige Informatica Lezione 8 Laurea magistrale in Scienze della mente Laurea magistrale in Psicologia dello sviluppo e dell'educazione Anno accademico: 2012 2013 1 Cognome
DettagliI database relazionali sono il tipo di database attualmente piu diffuso. I motivi di questo successo sono fondamentalmente due:
Il modello relazionale I database relazionali sono il tipo di database attualmente piu diffuso. I motivi di questo successo sono fondamentalmente due: 1. forniscono sistemi semplici ed efficienti per rappresentare
DettagliModello Relazionale dei DBMS - Vincoli Tradizionalmente, esistono quattro modelli logici: Gerarchico Reticolare Relazionale A oggetti XML I modelli
Modello Relazionale dei DBMS - Vincoli Tradizionalmente, esistono quattro modelli logici: Gerarchico Reticolare Relazionale A oggetti XML I modelli gerarchico e reticolare sono più vicini alle strutture
DettagliOrganizzazione degli archivi
COSA E UN DATA-BASE (DB)? è l insieme di dati relativo ad un sistema informativo COSA CARATTERIZZA UN DB? la struttura dei dati le relazioni fra i dati I REQUISITI DI UN DB SONO: la ridondanza minima i
DettagliDefinizione di domini
Definizione di domini Come nei linguaggi ad alto livello (es. C) è possibile definire nuovi domini (tipi di dati) a partire da quelli predefiniti, anche se il costruttore è più limitato. create domain
DettagliSISTEMI INFORMATIVI AVANZATI -2010/2011 1. Introduzione
SISTEMI INFORMATIVI AVANZATI -2010/2011 1 Introduzione In queste dispense, dopo aver riportato una sintesi del concetto di Dipendenza Funzionale e di Normalizzazione estratti dal libro Progetto di Basi
DettagliBASE DI DATI: sicurezza. Informatica febbraio 2015 5ASA
BASE DI DATI: sicurezza Informatica febbraio 2015 5ASA Argomenti Privatezza o riservatezza Vincoli di integrità logica della base di dati intrarelazionali interrelazionali Principio generale sulla sicurezza
DettagliPartite string string int int. Perché studiare il Modello Relazionale? Capitolo 2. Relazione: tre accezioni. Basi di dati relazionali: definizioni
Perché studiare il Modello Relazionale? Capitolo 2 Il modello relazionale È il modello più largamente usato Produttori: IBM, Informix, Microsoft, Oracle, Sybase, etc. Sistemi proprietari nei modelli più
DettagliProgettazione di Basi di Dati
Progettazione di Basi di Dati Prof. Nicoletta D Alpaos & Prof. Andrea Borghesan Entità-Relazione Progettazione Logica 2 E il modo attraverso il quale i dati sono rappresentati : fa riferimento al modello
DettagliAttributi e domini. A per {A}; XY per X Y (pertanto A 1 A 2 A 3 denota
Attributi e domini Assumiamo un universo infinito numerabile U = {A 0, A 1, A 2...} di attributi. Denotiamo gli attributi con A, B, C, B 1, C 1... e gli insiemi di attributi con X, Y, Z, X 1,... per brevità
DettagliBasi di dati 9 febbraio 2010 Compito A
Basi di dati 9 febbraio 2010 Compito A Domanda 0 (5%) Leggere e rispettare le seguenti regole: Scrivere nome, cognome, matricola (se nota), corso di studio e lettera del compito (ad esempio, A) sui fogli
DettagliDecomposizione senza perdita. Decomposizione senza perdita. Conservazione delle dipendenze. Conservazione delle dipendenze
Decomposizione senza perdita Data una relazione r su X, se X 1 e X 2 sono due sottoinsiemi di X la cui unione è X stesso, allora il join delle due relazioni ottenute per proiezione di r su X 1 e X 2 è
DettagliBasi di dati. Concetti introduttivi ESEMPIO. INSEGNAMENTI Fisica, Analisi, Aule. Docenti. Entità Relazioni Interrogazioni. Ultima modifica: 26/02/2007
Basi di dati Concetti introduttivi Ultima modifica: 26/02/2007 ESEMPIO INSEGNAMENTI Fisica, Analisi, Informatica Aule Docenti Entità Relazioni Interrogazioni St udent i Database 2 Tabella (I) STUDENTE
DettagliIl modello relazionale
Il modello relazionale Il modello relazionale è stato introdotto nel 1970 da E.F. Codd. Soltanto a metà degli anni ottanta ha trovato una buona diffusione sul mercato, in quanto all epoca della sua introduzione
DettagliINFORMATICA PER L IMPRESA (Docente Prof. Alfredo Garro)
INFORMATICA PER L IMPRESA (Docente Prof. Alfredo Garro) ESERCIZIO 1a a) Creare, utilizzando Microsoft Access, la base di dati Università,, seguendo lo schema logico relazionale seguente: DATABASE Università
DettagliIl Modello Relazionale
Il Modello Relazionale 1 Proposto da E. F. Codd nel 1970 per favorire l indipendenza dei dati e reso disponibile come modello logico in DBMS reali nel 1981 Si basa sul concetto matematico di relazione,
DettagliUso delle basi di dati DBMS. Cos è un database. DataBase. Esempi di database
Uso delle basi di dati Uso delle Basi di Dati Il modulo richiede che il candidato comprenda il concetto di base dati (database) e dimostri di possedere competenza nel suo utilizzo. Cosa è un database,
DettagliData Base. Master "Bio Info" Reti e Basi di Dati Lezione 5
Data Base Master "Bio Info" Reti e Basi di Dati Lezione 5 Sommario I concetti fondamentali Database e DBMS Tipi di Database Database Relazionale Attributi, Tupla, Vincoli di integrità, Chiavi, Vincolo
DettagliData Base Relazionali
Data Base Relazionali Modello Relazionale dei dati Basi di Dati Relazionali 1 Progettazione di DB METODOLOGIA DI PROGETTO IN TRE FASI Descrizione formalizzata e completa della realtà di interesse REALTA'
DettagliBasi di Dati: Corso di laboratorio
Basi di Dati: Corso di laboratorio Lezione 2 Raffaella Gentilini 1 / 45 Sommario 1 Il DDL di SQL: Cancellazione ed Aggiornamento di una BD Cancellazione di Schemi, Tabelle, e Domini Aggiornamento di Tabelle
DettagliDomini elementari, 2. Basi di dati. Domini elementari, 4. Domini elementari, 3. Domini definiti dagli utenti. Domini elementari, 5
Domini elementari, Basi di dati Linguaggi di Interrogazione: SQL Prof.Angela Bonifati Bit Valori booleani (vero/falso), singoli o in sequenza (la sequenza può essere di lunghezza variabile) Sintassi: bit
DettagliDIP. FUNZIONALI E FORME NORMALI esempi cfr. Albano Ghelli Orsini Basi di dati relazionali e a oggetti Zanichelli, 1997, cap.6 RIDONDANZE E ANOMALIE
DIP. FUNZIONALI E FORME NORMALI esempi cfr. Albano Ghelli Orsini Basi di dati relazionali e a oggetti Zanichelli, 1997, cap.6 Ridondanze e anomalie Dipendenze funzionali e implicazione logica Regole di
DettagliIl Modello Relazionale
Il Modello Relazionale Basi di dati 1 Il Modello Relazionale Angelo Montanari Dipartimento di Matematica e Informatica Università di Udine Il Modello Relazionale Basi di dati 2 Introduzione Il modello
DettagliInformatica per le discipline umanistiche 2 lezione 10
Informatica per le discipline umanistiche 2 lezione 10 Parte III: il computer come strumento per l interazione e la comunicazione Si è parlato di identità Parte III: il computer come strumento per l interazione
DettagliRappresentazione grafica di entità e attributi
PROGETTAZIONE CONCETTUALE La progettazione concettuale, ha il compito di costruire e definire una rappresentazione corretta e completa della realtà di interesse, e il prodotto di tale attività, è lo schema
DettagliBasi di dati. Concetti Introduttivi ESEMPIO. Fisica, Analisi, Informatica. Entità Relazioni Interrogazioni. Database 2
Basi di dati Concetti Introduttivi ESEMPIO Fisica, Analisi, Informatica Entità Relazioni Interrogazioni Database 2 Tabella (I) STUDENTE Attributi Data di Nascita Indirizzo Matricola Luca Neri 27/10/1980
DettagliGiovanna Rosone 04/03/2010. 04/03/2010 SQL, Istruzioni per la modifica dello schema
Giovanna Rosone 04/03/2010 04/03/2010 SQL, Istruzioni per la modifica dello schema 1 Riepilogo Impiegato Pagamenti Nome colonna PAG_COD PAG_MATR Tipo dati CHAR(6) CHAR(6) Nome colonna Tipo dati PAG_STIPENDIO
DettagliDBMS. Esempi di database. DataBase. Alcuni esempi di DBMS DBMS. (DataBase Management System)
(DataBase Management System) Sistemi di ges3one di basi di da3 Un Database Management System è un sistema software progettato per consentire la creazione e manipolazione efficiente di database (collezioni
DettagliNormalizzazione. Normalizzazione. Normalizzazione e modello ER. Esempio. Normalizzazione
Normalizzazione Normalizzazione Introduzione Forma normale di Boyce Codd Decomposizione in forma normale Normalizzazione Introduzione La normalizzazione è un procedimento che, a partire da uno schema relazionale
DettagliCorso sul linguaggio SQL
Corso sul linguaggio SQL Modulo L2B (SQL) 2.2 Comandi sulle tabelle 1 Prerequisiti Introduzione ai DB Tabelle, relazioni e attributi Chiave primaria Chiave esterna Vincoli di integrità 2 1 Introduzione
DettagliLezione V. Aula Multimediale - sabato 29/03/2008
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)
DettagliTelerilevamento e GIS Prof. Ing. Giuseppe Mussumeci
Corso di Laurea Magistrale in Ingegneria per l Ambiente e il Territorio A.A. 2014-2015 Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci Strutture di dati: DB e DBMS DATO E INFORMAZIONE Dato: insieme
DettagliCorso di Informatica (Basi di Dati)
Corso di Informatica (Basi di Dati) Lezione 6 (15 gennaio 2009) Linguaggio SQL: Data Definition Language (DDL) Da: Atzeni, Ceri, Paraboschi, Torlone - Basi di Dati Lucidi del Corso di Basi di Dati 1, Prof.
DettagliARCHIVI E DATABASE (prof. Ivaldi Giuliano)
ARCHIVI E DATABASE (prof. Ivaldi Giuliano) Archivio: è un insieme di registrazioni (o records) ciascuna delle quali è costituita da un insieme prefissato di informazioni elementari dette attributi (o campi).
DettagliI Sistemi Informativi
I Sistemi Informativi Definizione Un Sistema Informativo è un mezzo per acquisire, organizzare, correlare, elaborare e distribuire le informazioni che riguardano una realtà che si desidera descrivere e
DettagliMODELLO E/R. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni
MODELLO E/R Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni Modellazione dei dati Modellare i dati significa: costruire una rappresentazione semplificata della realtà osservata individuandone
DettagliIl modello relazionale dei dati
Il modello relazionale dei dati Master Alma Graduate School Sistemi Informativi Home Page del corso: http://www-db.deis.unibo.it/courses/alma_si1/ Versione elettronica: 04Relazionale.pdf Obiettivi della
DettagliTEORIA sulle BASI DI DATI
TEORIA sulle BASI DI DATI A cura del Prof. Enea Ferri Cos è un DATA BASE E un insieme di archivi legati tra loro da relazioni. Vengono memorizzati su memorie di massa come un unico insieme, e possono essere
DettagliALGEBRA RELAZIONALE RIEPILOGO
ALGEBRA RELAZIONALE RIEPILOGO PROIEZIONE: (notazione ) Operatore unario per estrarre colonne da una relazione: lista_attributi (R) Lo schema del risultato contiene i soli attributi contenuti in lista_attributi.
DettagliProgettazione di Database. Un Esempio
Progettazione di Database Un Esempio Data Base Management System Applicazione 1 Applicazione 2 Applicazione 3 DBMS A B C D E Il Modello Relazionale Una relazione è costituita su un insieme di domini, non
DettagliDDL, VINCOLI D INTEGRITÁ, AGGIORNAMENTI E VISTE. SQL è più di un semplice linguaggio di interrogazione
SQL DDL, VINCOLI D INTEGRITÁ, AGGIORNAMENTI E VISTE SQL è più di un semplice linguaggio di interrogazione! Linguaggio di definizione dati (Data-definition language, DDL):! Crea/distrugge/modifica relazioni
DettagliI database. Cosa sono e a cosa servono i Database
I database Estratto dal Modulo 1 - I database Prof. Piero GALLO 1 Cosa sono e a cosa servono i Database Un database(o base di dati) e' una raccolta organizzata di dati correlati. Il principale scopo di
DettagliModello relazionale. ing. Alfredo Cozzi 1
Modello relazionale E fondato sul concetto matematico di relazione tra insiemi di oggetti Una relazione su n insiemi A1, A2,..,An è un sottoinsieme di tutte le n-uple a1,a2,,an che si possono costruire
DettagliBASI DI DATI - : I modelli di database
BASI DI DATI - : I modelli di database DAL 1960 ci si e' orientati verso 3 direzioni: 1 MODELLO GERARCHICO Se i dati si presentano naturalmente in una struttura ad albero (ES. File System) Limiti: rigidità
DettagliGestione delle tabelle
Linguaggio SQL: fondamenti Creazione di una tabella Modifica della struttura di una tabella Cancellazione di una tabella Dizionario dei dati Integrità dei dati 2 Creazione di una tabella (1/3) Si utilizza
DettagliOperazioni sui database
Operazioni sui database Le operazioni nel modello relazionale sono essenzialmente di due tipi: Operazioni di modifica della base di dati (update) Interrogazioni della base di dati per il recupero delle
DettagliDATABASE. A cura di Massimiliano Buschi
DATABASE A cura di Massimiliano Buschi Introduzione Con Microsoft Access: Immissione dati e interrogazione Interfaccia per applicazioni e report Ma prima bisogna definire alcune conoscenze di base sui
DettagliIl modello relazionale
Il modello relazionale Sistemi Informativi L-A Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: Relazionale.pdf Sistemi Informativi L-A Relazionale, Gerarchico e Reticolare
DettagliProgettazione di un Database
Progettazione di un Database Per comprendere il processo di progettazione di un Database deve essere chiaro il modo con cui vengono organizzati e quindi memorizzati i dati in un sistema di gestione di
DettagliBasi di dati. Le funzionalità del sistema non vanno però ignorate
Basi di dati La progettazione di una base di dati richiede di focalizzare lo sforzo su analisi, progettazione e implementazione della struttura con cui sono organizzati i dati (modelli di dati) Le funzionalità
DettagliEsercitazione 8 Mercoledì 21 gennaio 2015 (2 ore) DDL e progettazione
Esercitazione 8 Mercoledì 21 gennaio 2015 (2 ore DDL e progettazione Testi degli esercizi Esercizio 1 (Tema d esame del 20 settembre 2012 Si consideri il seguente schema di base di dati che vuole tenere
DettagliIntroduzione alla teoria dei database relazionali. Come progettare un database
Introduzione alla teoria dei database relazionali Come progettare un database La struttura delle relazioni Dopo la prima fase di individuazione concettuale delle entità e degli attributi è necessario passare
DettagliIl linguaggio SQL: DDL di base
Il linguaggio SQL: DDL di base Sistemi Informativi T Versione elettronica: 04.1.SQL.DDLbase.pdf SQL: caratteristiche generali SQL (Structured Query Language) èil linguaggio standard de facto per DBMS relazionali,
DettagliDatabase. Si ringrazia Marco Bertini per le slides
Database Si ringrazia Marco Bertini per le slides Obiettivo Concetti base dati e informazioni cos è un database terminologia Modelli organizzativi flat file database relazionali Principi e linee guida
DettagliModello Relazionale. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto san giovanni
Modello Relazionale Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto san giovanni Cronologia dei modelli per la rappresentazione dei dati Modello gerarchico (anni 60) Modello reticolare
DettagliLinguaggio SQL. Structured Query Language
Linguaggio SQL Structured Query Language Creato negli anni 70 presso IBM Inizialmente solo linguaggio di interrogazione Ora linguaggio di riferimento per DB relazionali Standardizzato grazie al lavoro
DettagliIntroduzione. Elenco telefonico Conti correnti Catalogo libri di una biblioteca Orario dei treni aerei
Introduzione Elenco telefonico Conti correnti Catalogo libri di una biblioteca Orario dei treni aerei. ESEMPI DI INSIEMI DI DATI DA ORGANIZZARE ED USARE IN MANIERA EFFICIENTE Introduzione Più utenti con
DettagliSQL SQL. Definizione dei dati. Domini. Esistono 6 domini elementari:
SQL SQL (pronunciato anche come l inglese sequel: acronimo di Structured Query Language (linguaggio di interrogazione strutturato Linguaggio completo che presenta anche proprietà di: DDL (Data Definition
DettagliSQL. Linguaggio di interrogazione per basi di dati relazionali. Relazione = tabella con attributi (a 1, a 2,, a n ): Funzionalità principali di SQL:
SQL Linguaggio di interrogazione per basi di dati relazionali Relazione = tabella con attributi (a 1, a 2,, a n ): Funzionalità principali di SQL: Creazione delle tabelle Interrogazione della base di dati
DettagliCardinalità. Informatica. Cardinalità. Cardinalità. Cardinalità. Cardinalità. Cardinalità delle associazioni:
Informatica Lezione 3 Laurea magistrale in Psicologia Laurea magistrale in Psicologia dello sviluppo e dell'educazione Anno accademico: 2008-2009 delle associazioni: engono specificate per ciascuna partecipazione
DettagliLe Basi di Dati. Le Basi di Dati
Le Basi di Dati 20/05/02 Prof. Carlo Blundo 1 Le Basi di Dati Le Base di Dati (database) sono un insieme di tabelle di dati strutturate in maniera da favorire la ricerca di informazioni specializzate per
DettagliVincoli di Integrità Approccio dichiarativo alla loro implementazione
Vincoli di Integrità Approccio dichiarativo alla loro implementazione Antonella Poggi Dipartimento di informatica e Sistemistica SAPIENZA Università di Roma Progetto di Applicazioni Software Anno accademico
DettagliDBMS (Data Base Management System)
Cos'è un Database I database o banche dati o base dati sono collezioni di dati, tra loro correlati, utilizzati per rappresentare una porzione del mondo reale. Sono strutturati in modo tale da consentire
DettagliJoin in SQL (primo modo) Informatica. Tabella Dipartimento. Interrogazione 4a. Interrogazione 4b. Interrogazione 4a
Join in SQL (primo modo) Informatica Lezione 7 Laurea magistrale in Psicologia Laurea magistrale in Psicologia dello sviluppo e dell'educazione Anno accademico: 09- Per formulare interrogazioni che coinvolgono
DettagliCorso di Informatica (Basi di Dati)
Corso di Informatica (Basi di Dati) Lezione 1 (12 dicembre 2008) Introduzione alle Basi di Dati Da: Atzeni, Ceri, Paraboschi, Torlone - Basi di Dati Lucidi del Corso di Basi di Dati 1, Prof. Carlo Batini,
DettagliCorso di Informatica Generale 1 IN1. Linguaggio SQL
Università Roma Tre Facoltà di Scienze M.F.N. di Laurea in Matematica di Informatica Generale 1 Linguaggio SQL Marco (liverani@mat.uniroma3.it) Sommario Prima parte: le basi dati relazionali Basi di dati:
DettagliUso delle variabili di alias. SQL slide aggiuntive. Interrogazione 25. Interrogazione 26
Uso delle variabili di alias SQL slide aggiuntive Laurea magistrale in Scienze della mente Laurea magistrale in Psicologia dello sviluppo e dell'educazione educazione Non solo per disambiguare la notazione
DettagliCompito DA e BD. Tempo concesso: 90 minuti 12 giugno 03 Nome: Cognome: Matricola: Esercizio 1
Compito DA e BD. Tempo concesso: 90 minuti 12 giugno 03 Nome: Cognome: Matricola: Esercizio 1 Si considerino le seguenti specifiche relative alla realizzazione della base di dati di una facoltà e si definisca
DettagliSQL: concetti base SQL. Definizione dei dati in SQL. SQL: "storia"
SQL SQL: concetti base originariamente "Structured Query Language", ora "nome proprio" linguaggio con varie funzionalità: contiene sia il DDL sia il DML ne esistono varie versioni vediamo gli aspetti essenziali,
DettagliInformatica (Basi di Dati)
Corso di Laurea in Biotecnologie Informatica (Basi di Dati) Modello Entità-Relazione Anno Accademico 2009/2010 Da: Atzeni, Ceri, Paraboschi, Torlone - Basi di Dati Lucidi del Corso di Basi di Dati 1, Prof.
DettagliDatabase. Appunti di Amaranto Oronzo e Giancane Diego Lezione dell Ing. Lucia Vaira 24/04/2014
Database Appunti di Amaranto Oronzo e Giancane Diego Lezione dell Ing. Lucia Vaira 24/04/2014 Cos'è un database? È una struttura di dati composta da tabelle a loro volta composte da campi. Caratteristiche
DettagliBasi di dati. (Sistemi Informativi) teoria e pratica con Microsoft Access. Basi di dati. Basi di dati. Basi di dati e DBMS DBMS DBMS
Basi di Basi di (Sistemi Informativi) Sono una delle applicazioni informatiche che hanno avuto il maggiore utilizzo in uffici, aziende, servizi (e oggi anche sul web) Avete già interagito (magari inconsapevolmente)
DettagliVolumi di riferimento
Simulazione seconda prova Esame di Stato Gestione di un centro agroalimentare all ingrosso Parte prima) Un nuovo centro agroalimentare all'ingrosso intende realizzare una base di dati per l'attività di
DettagliIl linguaggio SQL. Il linguaggio SQL. Il linguaggio SQL. SQL - Tipi di dato. SQL - Tipi di dato numerici. SQL - Tipi di dato numerici
Il linguaggio SQL Il linguaggio SQL il linguaggio SQL è un linguaggio per la definizione e la manipolazione dei dati, sviluppato originariamente presso il laboratorio IBM a San Jose (California) è diventato
DettagliSQL - Tipi di dato Il linguaggio SQL
SQL - Tipi di dato Il linguaggio SQL I tipi di dato in SQL:1999 si suddividono in tipi predefiniti tipi strutturati tipi user-defined ci concentreremo sui tipi predefiniti i tipi predefiniti sono suddivisi
DettagliLaboratorio di Basi di Dati e Web
Laboratorio di Basi di Dati e Web Docente: Alberto Belussi Lezione 1 SQL Structured Query Language SQL è stato definito nel 1973 ed è oggi il linguaggio più diffuso per i DBMS relazionali Il linguaggio
DettagliBase di dati e sistemi informativi
Base di dati e sistemi informativi Una base di dati è un insieme organizzato di dati opportunamente strutturato per lo svolgimento di determinate attività La base di dati è un elemento fondamentale per
DettagliAlgebra booleana. Si dice enunciato una proposizione che può essere soltanto vera o falsa.
Algebra booleana Nel lavoro di programmazione capita spesso di dover ricorrere ai principi della logica degli enunciati e occorre conoscere i concetti di base dell algebra delle proposizioni. L algebra
DettagliCorso di Informatica RDBMS RDBMS. Corso di Laurea in Conservazione e Restauro dei Beni Culturali
Corso di Laurea in Conservazione e Restauro dei Beni Culturali Corso di Informatica Gianluca Torta Dipartimento di Informatica Tel: 011 670 6782 Mail: torta@di.unito.it RDBMS un Relational DBMS (RDBMS)
DettagliBasi di dati. L Algebra Relazionale. K. Donno - L Algebra Relazionale
Basi di dati L Algebra Relazionale Introduzione all Algebra Relazionale Una volta definito lo schema logico di un database, partendo da un Diagramma E-R, e dopo aver inserito le tabelle nel database, eventualmente
DettagliUnità C1 Modello logico
Dare una breve descrizione dei termini introdotti: (A) CONOSCENZA TERMINOLOGICA Tupla Modello gerarchico Modello reticolare Modello relazionale Relazione di relazione di database Istanza Regole di derivazione
DettagliINDICI. Prevediamo di effettuare spesso interrogazioni simili alle seguenti:
Date le tabelle: Clienti := < id, nome, cognome, indirizzo,città > Ordini := < id, data_ora_ordine, id_prodotto, id_cliente, quantità> Prodotti := < id, nome, descrizione, costo,scorte > INDICI Prevediamo
DettagliIntroduzione all Algebra Relazionale
Basi di dati L Algebra Relazionale Introduzione all Algebra Relazionale Una volta definito lo schema logico di un database, partendo da un Diagramma E-R, e dopo aver inserito le tabelle nel database, eventualmente
DettagliLinguaggio SQL: fondamenti D B M G. Gestione delle tabelle
Linguaggio SQL: fondamenti Creazione di una tabella Modifica della struttura di una tabella Cancellazione di una tabella Dizionario dei dati Integrità dei dati 2 2007 Politecnico di Torino 1 Creazione
Dettagli