IL MODELLO RELAZIONALE

Save this PDF as:
 WORD  PNG  TXT  JPG

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "IL MODELLO RELAZIONALE"

Transcript

1 IL MODELLO RELAZIONALE E i vincoli per le basi di dati relazionali 2 La storia Introdotto nel 1970 da E. F. Ted Codd (centro ricerche IBM) Codd, E.F. (1970). "A Relational Model of Data for Large Shared Data Banks, Il modello usa il concetto di relazione matematica come suo componente elementare e ha il suo fondamento teorico nella teoria degli insiemi e nella logica dei predicati del primo ordine.

2 3 Le basi Il modello relazionale rappresenta la base di dati come una collezione di relazioni Pensiamo a una relazione come a una tabella di valori: ogni riga della tabella rappresenta una collezione di dati collegati. Una riga rappresenta un fatto che tipicamente corrisponde ad un entità o a un associazione del modello reale. 4 Un esempio

3 5 I termini giusti Una riga è detta tupla Un intestazione di colonna è detta attributo La tabella è detta relazione Il tipo di dati che descrive i tipi di valori che possono apparire in ogni colonna è rappresentato da un dominio di possibili valori 6 Dominio (1) Un dominio D è un insieme di valori atomici. Per atomici si intende che ogni valore nel dominio è indivisibile, per lo meno per quanto riguarda il modello relazionale. Bisogna specificare un nome per il dominio. Un metodo comune per indicare un dominio consiste nello specificare un tipo di dati, da cui sono tratti i valori dei dati che formano il dominio. Esempio: Nomi: l insieme delle stringhe di caratteri che rappresentano i nomi di persona. Età_impiegati: possibili età degli impiegati di un azienda; ogni età deve avere un valore compreso tra 15 e 80 anni. Nomi_dipartimenti_universitari: l insieme dei nomi dei dipartimenti universitari in un università (ad esempio: informatica, ingegneria )

4 7 Dominio (2) Per ogni dominio viene anche specificato un tipo di dati o formato. Esempio: Il tipo di dati di Nomi_dipartimenti_universitari è l insieme di tutte le stringhe di caratteri che rappresentano nomi validi di dipartimenti; Il tipo di dati di Età_impiegati è un numero intero compreso tra 15 e 80 8 Lo schema Uno schema di relazione R è indicato con R(A 1, A 2,, A n ), dove: R è il nome della relazione A 1, A 2,, A n è l elenco di attributi Ogni attributo A i fornisce il nome del ruolo interpretato da un certo dominio D nello schema di relazione R. D è detto dominio di A i ed è indicato con dom(a i ) Il grado (o arità) di una relazione è il numero n di attributi presenti nel suo schema di relazione.

5 9 Lo schema, un esempio STUDENTE(Nome, SSN, Telefono_di_casa, Indirizzo, Telefono_ufficio, Età, MV) oppure STUDENTE(Nome: string, SSN: string, Telefono_di_casa: string, Indirizzo: string, Telefono_ufficio: string, Età: integer, MV: real) dom(nome) = Nomi dom(ssn) = Numeri_previdenza_sociale 10 Relazione Una relazione (o stato di relazione) r dello schema di relazione R(A 1, A 2,, A n ) è indicato anche con r(r) ed è un insieme di n-tuple, r = {t 1, t 2,, t m } Ogni n-tupla t è un elenco ordinato di n valori t = < v 1, v 2,, v n > dove ogni valore v i con 1 i n è un elemento di dom(a i ) oppure è uno speciale valore null Il valore i-esimo nella tupla t, che corrisponde all attributi A i, è indicato con t[a i ] o t[i]

6 11 Esempio STUDENTE 12 Definizione formale Una relazione (o stato di relazione) r(r) è una relazione matematica di grado n sui domini dom(a 1 ), dom(a 2 ),, dom(a n ), cioè un sottinsieme del prodotto cartesiano dei domini che definiscono R: r(r) (dom(a 1 ) x dom(a 2 ) x x dom(a n ))

7 1. Ordinamento delle tuple di una relazione Dal punto di vista logico non c è alcuna preferenza per un ordinamento rispetto ad un altro (per definizione gli elementi di un insieme matematico non hanno ordine). Dal punto di vista fisico un ordine c è necessariamente (c è una riga prima/dopo un altra) Ordinamento dei valori all interno di una tupla Dalla definizione sono valori ordinati ma, a livello logico, l ordine degli attributi e dei loro valori non è importante basta che si mantenga corrispondenza tra attributi e valori. 14

8 15 3. Valori e valori null nelle tuple Ogni valore nella tupla è un valore atomico, cioè non divisibile in parti componenti usando la struttura del modello relazionale di base. Non sono consentiti attributi composti e/o multivalore. I valori nulli vengono utilizzati per rappresentare i valori di attributi sconosciuti o non applicabili a una certa tupla. 4. Interpretazione (significato) di una relazione Lo schema di relazione può essere interpretato come una dichiarazione, ossia un tipo di asserzione. Ogni tupla nella relazione può perciò essere interpretata come un fatto o una particolare istanza dell asserzione. Le relazioni possono rappresentare: fatti su entità fatti su associazioni 16

9 17 Vincoli del modello relazionale In una base di dati ci sono generalmente molte relazioni e le tuple in esse contenute sono di solito collegate in vari modi. Lo stato dell intera base di dati corrisponde agli stati di tutte le sue relazioni in un particolare momento. Ci sono molti vincoli sui valori effettivi che caratterizzano uno stato della base di dati: 1. Vincoli intrinseci basati sul modello 2. Vincoli basati sullo schema 3. Vincoli basati sull applicazione Vincoli intrinseci basati sul modello Sono vincoli intrinseci del modello dei dati Esempio: Il vincolo che una relazione non può avere tuple duplicate è un vincolo intrinseco.

10 19 2. Vincoli basati sullo schema Sono vincoli che possono essere espressi direttamente sugli schemi del modello dei dati specificandoli di solito nel linguaggio DDL Sono questi: a. Vincoli di dominio b. Vincoli di chiave e vincoli sui valori nulli c. Vincoli di integrità delle entità d. Vincoli di integrità referenziale Vincoli basati sull applicazione Sono vincoli più generali e in genere non possono essere espressi direttamente negli schemi del modello dei dati Devono essere specificati e realizzati dai programmi applicativi Sono detti anche vincoli di integrità semantici o regole di business

11 21 2.a. Vincoli di dominio Stabiliscono che all interno di ciascuna tupla il valore di ogni attributo A deve essere un valore atomico del dominio dom(a). Ad ogni dominio è associato un tipo di dati. 2.b. Vincoli di chiave e vincoli sui valori nulli Abbiamo detto che: Una relazione è definita come un insieme di tuple [quindi] Tutti gli elementi di un insieme sono distinti per definizione [quindi] Le tuple di una relazione devono essere distinte [quindi] Nessuna coppia di tuple può assumere la stessa combinazione di valori per tutti gli attributi Di solito ci sono altri sottinsiemi di attributi di uno schema di relazione R con la proprietà che nessuna coppia di tuple in un qualsiasi stato di relazione r di R possa avere la stessa combinazione di valori per questi attributi. 22

12 2.b. Vincoli di chiave e vincoli sui valori nulli: la superchiave Denotiamo superchiave SK il sottinsieme di attributi per cui ogni coppia di tuple distinte, t 1 e t 2 : t 1 [SK] t 2 [SK] in uno stato di relazione r di R. Una superchiave definisce un vincolo di univocità secondo il quale nessuna coppia di tuple distinte in un stato r di R può avere lo stesso valore per SK. Ogni relazione ha almeno una superchiave di default: l insieme di tutti i suoi attributi. Una superchiave può avere attributi ridondanti 23 Quindi definiamo la chiave 2.b. Vincoli di chiave e vincoli sui valori nulli: la chiave Una chiave K di uno schema di relazione R è una superchiave di R, con la proprietà aggiuntiva che la rimozione di qualsiasi attributo A da K porta ad un insieme di attributi K che non è più una superchiave di R. Una chiave soddisfa quindi: 1. Due tuple distinte in qualsiasi stato della relazione non possono avere valori uguali per (tutti) gli attributi nella chiave [questo vale anche per le superchiavi] 2. Si tratta di una superchiave minimale, cioè una superchiave da cui non è possibile rimuovere alcun attributo mantenendo ancora valido il vincolo di univocità di 1. [questo non è richiesto alle superchiavi] 24

13 25 Esempio di chiave (1) In generale una superchiave formata da un solo attributo è anche chiave Una chiave formata da più attributi richiede che la proprietà di univocità sia verificata su tutti i suoi attributi 26 Chiavi candidate In generale uno schema di relazione ha più di una chiave. Ogni chiave è detta chiave candidata E comune indicare una delle chiavi candidate come la chiave primaria della relazione (i cui valori sono usati per identificare le tuple nella relazione)

14 27 Notazioni per uno schema di basi di dati Una base di dati in genere contiene molte relazioni, con tuple collegate tra loro S = {R 1, R 2,, R m }, schema di base di dati relazionale, è costituito da un insieme di relazioni e da un insieme di vincoli di integrità IC. DB = {r 1, r 2,, r m } di S, stato di base di dati relazionale, è un insieme di stati di relazione tali che ogni r i sia uno stato di R i e che gli stati di relazione r i soddisfino i vincoli specificati in IC. 28 Esempio di schema di base di dati

15 Stato di una base di dati Stato di una base di dati [ZOOM a]

16 31 Stato di una base di dati [ZOOM b] 32 Attenzione ai nomi Attributi che rappresentano lo stesso concetto del mini-mondo possono avere o NON AVERE nomi uguali in relazioni diverse Inoltre attributi che rappresentano concetti diversi possono avere lo stesso nome in relazioni diverse

17 33 2.c. Vincoli di integrità delle entità Il vincolo di integrità delle entità stabilisce che nessuno dei valori della chiave primaria può essere nullo. Altrimenti come le distinguo? 34 2.d. Vincoli di integrità referenziale Il vincolo di integrità referenziale: è specificato tra due relazioni è usato per mantenere la consistenza fra tuple delle due relazioni Informalmente stabilisce che una tupla in una relazione che fa riferimento a un altra relazione deve far riferimento a una tupla esistente in quella relazione. Esempio: L attributo N_D di IMPIEGATO fornisce il numero del dipartimento per il quale ogni impiegato lavora; perciò il suo valore in ogni tupla di IMPIEGATO deve accordarsi con il valore di NUMERO_D di una qualche tupla nella relazione DIPARTIMENTO

18 2.d. Vincoli di integrità referenziale: la chiave esterna (1) Un insieme di attributi FK (foreign key) nello schema di relazione R 1, è una chiave esterna di R 1 che riferisce la relazione R 2 se soddisfa: gli attributi presenti in FK hanno gli stessi domini degli attributi di chiave primaria PK (primary key) di R 2 ; si dice che gli attributi di FK riferiscono alla relazione R 2 un valore di FK in una tupla t 1 dello stato corrente r 1 (R 1 ) o è presente come valore di PK in una qualche tupla t 2 dello stato corrente r 2 (R 2 ) o è nullo. Nel primo caso si ha t 1 [FK] = t 2 [PK] e si dice che la tupla t 1 riferisce alla tupla t In questa definizione: R 1 è detta relazione referenziante R 2 è detta relazione riferita si dice che sussiste il vincolo di integrità referenziale da R 1 a R 2. 2.d. Vincoli di integrità referenziale: la chiave esterna (2) In questa definizione: R 1 è detta relazione referenziante R 2 è detta relazione riferita si dice che sussiste il vincolo di integrità referenziale da R 1 a R In una base di dati con molte relazioni ci sono generalmente molti vincoli di integrità referenziale. I vincoli di IR nascono generalmente dalle associazioni fra le entità presenti negli schemi di relazione.

19 2.d. Vincoli di integrità referenziale: la chiave esterna (3) Una chiave esterna può fare riferimento alla sua stessa relazione di appartenenza I vincoli di IR possono essere rappresentati come archi orientati da ciascuna chiave esterna verso la relazione che essa riferisce. La punta della freccia punta alla chiave primaria della relazione riferita. 37 Diagramma di schema con vincoli di integrità referenziale 38

20 39 3. Vincoli basati sull applicazione Sono vincoli di integrità semantica che devono essere specificati nella base di dati Possono essere implementati tramite linguaggi di specifica dei vincoli oppure tramite meccanismi detti trigger e asserzioni Possono essere di due tipi: vincoli di stato (definiscono lo stato valido) vincoli di transizione (legati alla gestione dei cambiamenti della base di dati). Esempio: [stato] lo stipendio di un impiegato non dovrebbe superare lo stipendio del supervisore dell impiegato [transizione] lo stipendio di un impiegato può solo aumentare 40 Operazioni sulle relazioni Due tipi di operazioni: Operazioni di reperimento (retrieval) Operazioni di aggiornamento (update) Operazioni di reperimento: un espressione dell algebra relazionale produce una nuova relazione applicando operatori algebrici a un insieme di relazioni Operazioni di aggiornamento Inserimento Cancellazione Modifica Ogni volta che si eseguono operazioni di aggiornamento bisogna fare attenzione a non violare i vincoli di integrità specificati sullo schema della base di dati relazionale

21 41 Operazioni di inserimento Sono usate per inserire nuove tuple in una relazione Fornisce un elenco di valori di attributi per una nuova tupla t che deve essere inserita in una relazione R. Può violare tutti e 4 i vincoli: a. Vincoli di dominio b. Vincoli di chiave e vincoli sui valori nulli c. Vincoli di integrità delle entità d. Vincoli di integrità referenziale 42 Esempi di inserimento 1. Inserisci < Cecilia, F, Kolonsky, NULL, , 6357 Windy Lane, Katy, TX, F, 28000, NULL, 4> in IMPIEGATO. 2. Inserisci < Alicia, J, Zelaya, , , 6357 Windy Lane, Katy, TX, F, 28000, , 4> in IMPIEGATO. 3. Inserisci < Cecilia, F, Kolonsky, , , 6357 Windy Lane, Katy, TX, F, 28000, , 7> in IMPIEGATO. 4. Inserisci < Cecilia, F, Kolonsky, , , 6357 Windy Lane, Katy, TX, F, 28000, NULL, 4> in IMPIEGATO.

22 43 Esempi di inserimento 1. Inserisci < Cecilia, F, Kolonsky, NULL, , 6357 Windy Lane, Katy, TX, F, 28000, NULL, 4> in IMPIEGATO. [NO, viola vincolo di integrità dell entità] 2. Inserisci < Alicia, J, Zelaya, , , 6357 Windy Lane, Katy, TX, F, 28000, , 4> in IMPIEGATO. [NO, viola il vincolo di chiave] 3. Inserisci < Cecilia, F, Kolonsky, , , 6357 Windy Lane, Katy, TX, F, 28000, , 7> in IMPIEGATO. [NO, viola il vincolo di integrità referenziale] 4. Inserisci < Cecilia, F, Kolonsky, , , 6357 Windy Lane, Katy, TX, F, 28000, NULL, 4> in IMPIEGATO. [OK!] 44 Operazioni di cancellazione Sono usate per cancellare tuple da una relazione Deve essere specificata una condizione sugli attributi della relazione per specificare le tuple da cancellare Può violare solo il vincolo di integrità referenziale. In caso di violazioni 3 operazioni possibili: Restrict rifiuta la cancellazione Cascade tenta di far ricadere in cascata la cancellazione Set null/set default modifica i valori degli attributi referenziati

23 45 Esempi di cancellazione 1. Cancella la tupla di LAVORA _SU con SSN_I = e N_P = Cancella la tupla di IMPIEGATO con SSN = Cancella la tupla di IMPIEGATO con SSN = Esempi di cancellazione 1. Cancella la tupla di LAVORA _SU con SSN_I = e N_P = 10. [OK!] 2. Cancella la tupla di IMPIEGATO con SSN = [NO, ci sono tuple in LAVORA_SU che riferiscono] 3. Cancella la tupla di IMPIEGATO con SSN = [NO, ci sono tuple in IMPIEGATO, DIPARTIMENTO, LAVORA_SU E PERSONA_A_CARICO che riferiscono]

24 47 Operazioni di modifica Sono usate per cambiare i valori di uno o più attributi di tuple presenti in una relazione Deve essere specificata una condizione sugli attributi della relazione per specificare le tuple da modificare In genere la modifica di un attributo che non è né una chiave primaria né una chiave esterna non dà luogo ad alcun problema. 48 Esempi di modifica 1. Modifica a lo STIPENDIO nella tupla di IMPIEGATO con SSN = Modifica a 1 N_D per la tupla IMPIEGATO con SSN = Modifica a 7 N_D per la tupla IMPIEGATO con SSN = Modifica a il valore di SSN per tupla di IMPIEGATO con SSN =

25 49 Esempi di modifica 1. Modifica a lo STIPENDIO nella tupla di IMPIEGATO con SSN = [OK!] 2. Modifica a 1 N_D per la tupla IMPIEGATO con SSN = [OK!] 3. Modifica a 7 N_D per la tupla IMPIEGATO con SSN = [NO, viola l integrità referenziale] 4. Modifica a il valore di SSN per tupla di IMPIEGATO con SSN = [NO, viola il vincolo di chiave primaria] 50 Esercizio

26 51 Esercizio Si consideri lo schema di base di dati relazionale COMPAGNIA_AEREA, che descrive una base di dati per le informazioni relative ai voli di una compagnia aerea. Ogni VOLO è identificato da un NUMERO del volo ed è composto da una o più tratte (TRATTA_VOLO) con NUMERO_TRATTA 1, 2, 3 ecc. Ogni tratta ha i suoi orari di partenza e di arrivo previsti nonché gli aeroporti interessati, e presenta tante ISTANZE_DI_TRATTA quante sono le DATE in cui il volo è programmato. 52 Esercizio Per ogni volo, sono presenti diverse TARIFFE. Per ogni istanza di tratta sono memorizzate le prenotazioni dei posti (PRENOTAZIONE_POSTI), l AEROPLANO usato su quella tratta e gli orari effettivi di partenza e arrivo, nonché gli aeroporti effettivamente utilizzati. Un AEROPLANO è identificato da un ID_AEROPLANO e possiede uno specifico TIPO_AEROPLANO. PUO _ATTERRARE collega un TIPO_AEROPLANO con l AEROPORTO su cui un aeroplano di quel tipo può atterrare. Un AEROPORTO è identificato da un CODICE_AEROPORTO.

27 53 Esercizio Si consideri un aggiornamento della base di dati COMPAGNIA_AEREA che permetta di inserire una prenotazione per uno specifico volo o tratta di volo in una certa data. a. Si forniscano le operazioni relative a questo aggiornamento. b. Quali tipi di vincoli è opportuno controllare? c. Quali di questi vincoli sono vincoli di chiave, di integrità dell entità e di integrità referenziale, e quali non lo sono? d. Si specifichino tutti i vincoli di integrità referenziale della Figura Esercizio a. Si forniscano le operazioni relative a questo aggiornamento. Una possibile sequenza di operazioni di aggiornamento è la seguente: INSERISCI IN PRENOTAZIONE_POSTI; MODIFICA la tupla di ISTANZA_DI_TRATTA con la condizione: impostando NUMERO_DI_POSTI_DISPONIBILI = NUMERO_DI_POSTI_DISPONIBILI 1; Queste operazioni devono essere ripetute per ogni TRATTA di volo sulla quale è eseguita la prenotazione. Si assume che la prenotazione valga per un unico posto. Per realizzare un sistema più realistico in cui sia possibile riservare più di un posto con un unica prenotazione sono necessarie operazioni più complesse.

28 55 Esercizio b. Quali tipi di vincoli è opportuno controllare? Dobbiamo verificare che il NUMERO_DI_POSTI_DISPONIBILI su ciascuna INSTANZA_DI_TRATTA prenotata sia maggiore di 1 prima di eseguire la prenotazione (a meno che sia consentito l overbooking) e che il NUMERO_POSTO riservato in PRENOTAZIONE_POSTI sia disponibile. 56 Esercizio c. Quali di questi vincoli sono vincoli di chiave, di integrità dell entità e di integrità referenziale, e quali non lo sono? L operazione di INSERIMENTO in PRENOTAZIONE_POSTI dovrà verificare tutti i vincoli di chiave, integrità dell entità e integrità referenziale della relazione. La verifica che il NUMERO_DI_POSTI_DISPONIBILI su ciascuna ISTANZA_DI_TRATTA prenotata sia maggiore di 1 non ricade in nessuna delle precedenti tipologie di vincolo (si tratta di un generico vincolo di integrità semantica).

29 57 Esercizio d. Si specifichino tutti i vincoli di integrità referenziale della Figura 3.8. Scriveremo un vincolo di integrità referenziale nella forma R.A --> S (rispettivamente, R.(X) --> T) per denotare che un attributo A (rispettivamente, un insieme di attributi X) della relazione R costituisce una chiave esterna che referenzia la chiave primaria della relazione S (rispettivamente T). TRATTA_VOLO.NUMERO_VOLO --> VOLO TRATTA_VOLO.CODICE_AEROPORTO_PARTENZA --> AEROPORTO TRATTA_VOLO. CODICE_AEROPORTO_ARRIVO --> AEROPORTO ISTANZA_DI_TRATTA.(NUMERO_VOLO, NUMERO_TRATTA) --> TRATTA_VOLO ISTANZA_DI_TRATTA.CODICE_AEROPORTO_PARTENZA --> AEROPORTO ISTANZA_DI_TRATTA. CODICE_AEROPORTO_ARRIVO --> AEROPORTO ISTANZA_DI_TRATTA.ID_AEROPLANO --> AEROPLANO TARIFFE.NUMERO_VOLO --> VOLO PUO _ATTERRARE.NOME_TIPO_AEROPLANO --> TIPO_AEROPLANO PUO _ATTERRARE.CODICE_AEROPORTO --> AEROPORTO AEROPLANO.TIPO_AEROPLANO --> TIPO_AEROPLANO PRENOTAZIONE_POSTI.(NUMERO_VOLO, NUMERO_TRATTA, DATA) --> ISTANZA_DI_TRATTA

Lo schema concettuale risultante dalla progettazione concettuale è l input alla fase di progettazione logica.

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

Dettagli

Basi di Dati e Sistemi Informativi. Progettazione logica: Il modello relazionale

Basi 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

Dettagli

Il Modello Relazionale

Il 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

Dettagli

MODELLO RELAZIONALE. cesarini-bdsi mod relazionale 1 MODELLO RELAZIONALE

MODELLO RELAZIONALE. cesarini-bdsi mod relazionale 1 MODELLO RELAZIONALE 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

Dettagli

Il modello relazionale

Il 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

Dettagli

Il modello relazionale dei dati e stato introdotto da Codd. nel 1970 (E.F. Codd, \A relational model of data for large

Il 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

Dettagli

Il Modello Relazionale

Il 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

Dettagli

Il Modello Relazionale

Il 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,

Dettagli

Partite string string int int. Perché studiare il Modello Relazionale? Capitolo 2. Relazione: tre accezioni. Basi di dati relazionali: definizioni

Partite 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ù

Dettagli

Basi di dati. Il Modello Relazionale dei Dati. K. Donno - Il Modello Relazionale dei Dati

Basi 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

Dettagli

MODELLO RELAZIONALE. Introduzione

MODELLO 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)

Dettagli

DDL, VINCOLI D INTEGRITÁ, AGGIORNAMENTI E VISTE. SQL è più di un semplice linguaggio di interrogazione

DDL, 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

Dettagli

Vincoli di Integrità Approccio dichiarativo alla loro implementazione

Vincoli 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

Dettagli

Modello relazionale. ing. Alfredo Cozzi 1

Modello 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

Dettagli

Modulo 2 Data Base 2

Modulo 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

Dettagli

Attributi e domini. A per {A}; XY per X Y (pertanto A 1 A 2 A 3 denota

Attributi 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à

Dettagli

Data Base Relazionali

Data 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'

Dettagli

Organizzazione degli archivi

Organizzazione 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

Dettagli

La progettazione concettuale: il modello ER. 17/12/2007 Unità di Apprendimento A2 1

La progettazione concettuale: il modello ER. 17/12/2007 Unità di Apprendimento A2 1 La progettazione concettuale: il modello ER 17/12/2007 Unità di Apprendimento A2 1 1 La progettazione concettuale Prima di procedere con la progettazione concettuale è necessario effettuare un analisi

Dettagli

Definizione di domini

Definizione 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

Dettagli

BASI DI DATI - : I modelli di database

BASI 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à

Dettagli

Normalizzazione. Relazionali

Normalizzazione. Relazionali Normalizzazione di Schemi Relazionali Normalizzazione Forme Normali Una forma normale è una proprietà di uno schema relazionale che ne garantisce la qualità, cioè l assenza di determinati difetti Una relazione

Dettagli

LA NORMALIZZAZIONE. Introduzione

LA NORMALIZZAZIONE. Introduzione LA NORMALIZZAZIONE Introduzione La normalizzazione e' una tecnica di progettazione dei database, mediante la quale si elimina la rindondanza dei dati al fine di evitare anomalie nella loro consistenza

Dettagli

Rappresentazione grafica di entità e attributi

Rappresentazione 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

Dettagli

Modello Relazionale. Modello Relazionale. Relazioni - Prodotto Cartesiano. Relazione: tre accezioni. Es. Dati gli insiemi

Modello 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)

Dettagli

I database relazionali sono il tipo di database attualmente piu diffuso. I motivi di questo successo sono fondamentalmente due:

I 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

Dettagli

Vincoli di Integrità

Vincoli di Integrità Vincoli di Integrità Antonella Poggi Dipartimento di informatica e Sistemistica Sapienza Università di Roma Progetto di Applicazioni Software Anno accademico 2010-2011 Questi lucidi sono stati prodotti

Dettagli

Il Modello Relazionale (1)

Il Modello Relazionale (1) Il Modello Relazionale (1) Il modello relazionale, sebbene non sia stato il modello usato nei primi DBMS, è divenuto lentamente il modello più importante al punto che è oggi comunemente usato in tutti

Dettagli

Gestione delle tabelle

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 Creazione di una tabella (1/3) Si utilizza

Dettagli

Operazioni sui database

Operazioni 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

Dettagli

Informatica per le discipline umanistiche 2 lezione 10

Informatica 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

Dettagli

Il modello relazionale

Il 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

Dettagli

70555 Informatica 3 70777 Sicurezza 2. 70555 Mario Rossi 70777 Anna Bianchi. Esempio istanza:

70555 Informatica 3 70777 Sicurezza 2. 70555 Mario Rossi 70777 Anna Bianchi. Esempio istanza: DOMANDE 1) Definire i concetti di schema e istanza di una base di dati, fornendo anche un esempio. Si definisce schema di una base di dati, quella parte della base di dati stessa che resta sostanzialmente

Dettagli

Modello 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 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

Dettagli

Linguaggio SQL: fondamenti D B M G. Gestione delle tabelle

Linguaggio 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

LABORATORIO. 2 Lezioni su Basi di Dati Contatti:

LABORATORIO. 2 Lezioni su Basi di Dati Contatti: PRINCIPI DI INFORMATICA CORSO DI LAUREA IN SCIENZE BIOLOGICHE Gennaro Cordasco e Rosario De Chiara {cordasco,dechiara}@dia.unisa.it Dipartimento di Informatica ed Applicazioni R.M. Capocelli Laboratorio

Dettagli

Database: collezione di fatti, registrabili e con un ben preciso significato, relazionati fra di loro

Database: 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

Dettagli

Corso di Informatica Generale 1 IN1. Linguaggio SQL

Corso 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:

Dettagli

TEORIA sulle BASI DI DATI

TEORIA 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

Dettagli

Introduzione alle Basi di Dati

Introduzione alle Basi di Dati 1 Introduzione alle Basi di Dati Massimo Paolucci (paolucci@dist.unige.it) DIST Università di Genova Sistema Azienda 2 Sistema organizzativo è costituito da una serie di risorse e di regole necessarie

Dettagli

Basi di Dati e Sistemi Informativi. Structured Query Language

Basi di Dati e Sistemi Informativi. Structured Query Language Basi di Dati e Sistemi Informativi Structured Query Language Corso di Laurea in Ing. Informatica Ing. Gestionale Magistrale SQL come DDL e DML SQL non è solo un linguaggio di interrogazione Linguaggio

Dettagli

PROGETTAZIONE DI BASI DI DATI RELAZIONALI ATTRAVERSO LA TRADUZIONE DI SCHEMI ER ED EER A SCHEMI RELAZIONALI

PROGETTAZIONE DI BASI DI DATI RELAZIONALI ATTRAVERSO LA TRADUZIONE DI SCHEMI ER ED EER A SCHEMI RELAZIONALI LEZIONE DEL 11/11/2008 di BASI DI DATI Prof. Bochicchio PROGETTAZIONE DI BASI DI DATI RELAZIONALI ATTRAVERSO LA TRADUZIONE DI SCHEMI ER ED EER A SCHEMI RELAZIONALI Nelle lezioni precedenti abbiamo accennato

Dettagli

Elena Baralis 2013 Politecnico di Torino 1

Elena 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

Dettagli

Basi di dati. Il Linguaggio SQL. K. Donno - Il Linguaggio SQL

Basi 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,

Dettagli

Basi di Dati: Corso di laboratorio

Basi 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

Dettagli

Progettazione di Basi di Dati

Progettazione 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

Dettagli

DB - Modello relazionale dei dati. DB - Modello Relazionale 1

DB - 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

Dettagli

Vincoli di integrità

Vincoli 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?

Dettagli

BASE DI DATI: sicurezza. Informatica febbraio 2015 5ASA

BASE 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

Dettagli

DBMS (Data Base Management System)

DBMS (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

Dettagli

Informatica. Il modello relazionale: Relazioni e tabelle. Relazioni con attributi

Informatica. 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

Dettagli

Il 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. 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

Dettagli

FORME NORMALI E DIPENDENZE

FORME NORMALI E DIPENDENZE Sistemi Informativi: Forme Normali e Dipendenze FORME NORMALI E DIPENDENZE La teoria della normalizzazione e delle dipendenze ha come scopo principale quello di fornire gli strumenti teorici e pratici

Dettagli

SQL - Tipi di dato Il linguaggio SQL

SQL - 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

Dettagli

La normalizzazione Trasformazione da concettuale a relazionale

La normalizzazione Trasformazione da concettuale a relazionale Oreste Signore (Oreste.Signore@cnuce.cnr.it) Definizione Il concetto di chiave Chiave primaria Chiave esterna L algebra relazionale Le operazioni Le operazioni speciali La normalizzazione Trasformazione

Dettagli

SQL SQL. Definizione dei dati. Domini. Esistono 6 domini elementari:

SQL 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

Dettagli

Progettazione concettuale usando il modello Entità-Relazione (ER) e Progettazione Logica

Progettazione concettuale usando il modello Entità-Relazione (ER) e Progettazione Logica Progettazione concettuale usando il modello Entità-Relazione (ER) e Progettazione Logica 1 Introduzione alla progettazione delle basi di dati v Progettazione concettuale (in questa fase si usa il modello

Dettagli

Lezione 2. Il modello entità relazione

Lezione 2. Il modello entità relazione Lezione 2 Il modello entità relazione Pag.1 Introduzione alla progettazione delle basi di dati 1. Analisi dei requisiti Quali sono le entità e le relazioni dell organizzazione? Quali informazioni su queste

Dettagli

Facoltà di Farmacia - Corso di Informatica

Facoltà di Farmacia - Corso di Informatica Basi di dati Riferimenti: Curtin cap. 8 Versione: 13/03/2007 1 Basi di dati (Database, DB) Una delle applicazioni informatiche più utilizzate, ma meno conosciute dai non informatici Avete già interagito

Dettagli

LABORATORIO di INFORMATICA

LABORATORIO di INFORMATICA Università degli Studi di Cagliari Corso di Laurea Magistrale in Ingegneria per l Ambiente ed il Territorio LABORATORIO di INFORMATICA A.A. 2010/2011 Prof. Giorgio Giacinto IL MODELLO ER PER LA PROGETTAZIONE

Dettagli

SISTEMI INFORMATIVI AVANZATI -2010/2011 1. Introduzione

SISTEMI 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

Dettagli

Il linguaggio SQL: le basi

Il linguaggio SQL: le basi Il linguaggio SQL: le basi Sistemi Informativi L-A Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: SQLa-basi.pdf Sistemi Informativi L-A SQL: caratteristiche generali

Dettagli

Raffinamento dello schema e forme normali. T. Catarci, M. Scannapieco, Corso di Basi di Dati, A.A. 2008/2009, Sapienza Università di Roma

Raffinamento dello schema e forme normali. T. Catarci, M. Scannapieco, Corso di Basi di Dati, A.A. 2008/2009, Sapienza Università di Roma Raffinamento dello schema e forme normali 1 Forme Normali Le forme normali consentono di valutare la qualità delle relazione Sono state proposte diverse forme normali che includono, in ordine di generalità:

Dettagli

PROGETTAZIONE CONCETTUALE

PROGETTAZIONE CONCETTUALE Fasi della progettazione di basi di dati PROGETTAZIONE CONCETTUALE Parte V Progettazione concettuale Input: specifiche utente Output: schema concettuale (astrazione della realtà) PROGETTAZIONE LOGICA Input:

Dettagli

Normalizzazione. Normalizzazione. Normalizzazione e modello ER. Esempio. Normalizzazione

Normalizzazione. 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

Dettagli

UNIVERSITA DEGLI STUDI DI FIRENZE. Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica

UNIVERSITA DEGLI STUDI DI FIRENZE. Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica UNIVERSITA DEGLI STUDI DI FIRENZE Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica Esercitazioni per l esame di Intelligenza Artificiale Prof. G. Soda Classic di Sauro Menchetti A.A.1998-99

Dettagli

Il linguaggio SQL: DDL di base

Il 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,

Dettagli

Introduzione ai database relazionali

Introduzione ai database relazionali Introduzione ai database relazionali Tabelle Un database (DB) è costituito da un insieme di file che memorizzano dati opportunamente organizzati Nei database relazionale tale organizzazione è costituita

Dettagli

Progettare una basi di dati vuole dire progettare la struttura dei dati e le applicazioni

Progettare una basi di dati vuole dire progettare la struttura dei dati e le applicazioni LA PROGETTAZIONE DI BASI DI DATI Progettare una basi di dati vuole dire progettare la struttura dei dati e le applicazioni La progettazione dei dati è l attività più importante Per progettare i dati al

Dettagli

Alessandra Raffaetà. Basi di Dati

Alessandra Raffaetà. Basi di Dati Lezione 2 S.I.T. PER LA VALUTAZIONE E GESTIONE DEL TERRITORIO Corso di Laurea Magistrale in Scienze Ambientali Alessandra Raffaetà Dipartimento di Informatica Università Ca Foscari Venezia Basi di Dati

Dettagli

Modellazione dei dati in UML

Modellazione dei dati in UML Corso di Basi di Dati e Sistemi Informativi Modellazione dei dati in UML Angelo Montanari Dipartimento di Matematica e Informatica Università degli Studi di Udine Introduzione UML (Unified Modeling Language):

Dettagli

Modello 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 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

Dettagli

Archivi e Basi di Dati

Archivi e Basi di Dati Archivi e Basi di Dati A B C File Programma 1 Programma 2 A B C File modificati Programma 1 DBMS DB Programma 2 Informatica Generale (CdL in E&C), A.A. 2000-2001 55 Problemi nella gestione di archivi separati

Dettagli

Domini elementari, 2. Basi di dati. Domini elementari, 4. Domini elementari, 3. Domini definiti dagli utenti. Domini elementari, 5

Domini 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

Dettagli

Basi di dati. 2. Il modello relazionale. Il modello relazionale. Relazione: tre accezioni. 2.1 Basi di dati relazionali. Giuseppe De Giacomo

Basi di dati. 2. Il modello relazionale. Il modello relazionale. Relazione: tre accezioni. 2.1 Basi di dati relazionali. Giuseppe De Giacomo asi di dati Giuseppe De Giacomo Dipartimento di Informatica e Sistemistica Antonio Ruberti Università di Roma La Sapienza Anno Accademico 2005/2006 Canale M-Z 2. Il modello relazionale 2.1 asi di dati

Dettagli

Esercitazione 1. Sistemi Informativi T. Versione elettronica: L01.2.DDLDMLbase.pdf

Esercitazione 1. Sistemi Informativi T. Versione elettronica: L01.2.DDLDMLbase.pdf Esercitazione 1 SQL: DDL e DML di base Sistemi Informativi T Versione elettronica: L01.2.DDLDMLbase.pdf Prime cose da fare Fare login sul PC usando lo username di Facoltà Procedura descritta qui: http://ccib.ing.unibo.it/content/account

Dettagli

I livelli di progettazione possono essere così schematizzati: Esistono tre tipi diversi di modelli logici: Modello gerarchico: Esempio SPECIFICHE

I livelli di progettazione possono essere così schematizzati: Esistono tre tipi diversi di modelli logici: Modello gerarchico: Esempio SPECIFICHE I DATABASE o basi di dati possono essere definiti come una collezione di dati gestita dai DBMS. Tali basi di dati devono possedere determinati requisiti, definiti come specifiche, necessarie per il processo

Dettagli

DATABASE. nozioni di base

DATABASE. nozioni di base DATABASE nozioni di base Un database è una raccolta di informazioni organizzata in modo da poter essere facilmente accessibile per consultazione, modifiche e aggiornamenti. All'inizio della storia dei

Dettagli

BASI DI DATI per la gestione dell informazione. Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone

BASI DI DATI per la gestione dell informazione. Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone BASI DI DATI per la gestione dell informazione Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone Libro di Testo 22 Chianese, Moscato, Picariello e Sansone BASI DI DATI per la Gestione dell

Dettagli

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE.

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE. INFORMATICA Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE. APPLICAZIONI WEB L architettura di riferimento è quella ampiamente diffusa ed

Dettagli

disponibili nel pacchetto software.

disponibili nel pacchetto software. Modulo syllabus 4 00 000 00 0 000 000 0 Modulo syllabus 4 DATABASE 00 000 00 0 000 000 0 Richiede che il candidato dimostri di possedere la conoscenza relativa ad alcuni concetti fondamentali sui database

Dettagli

Il modello relazionale dei dati

Il 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

Dettagli

Elementi di Algebra Relazionale

Elementi di Algebra Relazionale Note dalle lezioni di INFORMATICA (per gli allievi della classe quinta - indirizzo MERCURIO) Elementi di Algebra Relazionale prof. Stefano D.L.Campanozzi I.T.C. Giulio Cesare Bari - a.s. 2008-2009 1 Introduzione

Dettagli

Cardinalità e identificatori. Informatica. Generalizzazioni. Generalizzazioni. Generalizzazioni. Generalizzazioni

Cardinalità 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

Dettagli

Progettazione concettuale

Progettazione concettuale Progettazione concettuale Strategie top-down A partire da uno schema che descrive le specifiche mediante pochi concetti molto astratti, si produce uno schema concettuale mediante raffinamenti successivi

Dettagli

BASI DI DATI DIPENDENZE FUNZIONALI E FORME NORMALI

BASI DI DATI DIPENDENZE FUNZIONALI E FORME NORMALI BASI DI DATI DIPENDENZE FUNZIONALI E FORME NORMALI Prof. Fabio A. Schreiber Dipartimento di Elettronica e Informazione Politecnico di Milano ERRORI DI PROGETTAZIONE INSERIMENTO DI ELEMENTI RIDONDANTI SPRECO

Dettagli

Cardinalità. Informatica. Cardinalità. Cardinalità. Cardinalità. Cardinalità. Cardinalità delle associazioni:

Cardinalità. 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

Dettagli

Corso di Informatica (Basi di Dati)

Corso 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,

Dettagli

Laboratorio di Informatica

Laboratorio di Informatica Laboratorio di Informatica Corso di Laurea Interfacoltà in Biotecnologie Lezione 3: Basi di Dati Lucido 1 Scopo della lezione Definire cos è una base di dati e un sistema di gestione della base di dati

Dettagli

DIP. 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 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

Dettagli

Premesse alla statistica

Premesse alla statistica Premesse alla statistica Versione 22.10.08 Premesse alla statistica 1 Insiemi e successioni I dati di origine sperimentale si presentano spesso non come singoli valori, ma come insiemi di valori. Richiamiamo

Dettagli

Informatica (Basi di Dati)

Informatica (Basi di Dati) Corso di Laurea in Biotecnologie Informatica (Basi di Dati) Introduzione alle Basi di Dati Anno Accademico 2009/2010 Da: Atzeni, Ceri, Paraboschi, Torlone - Basi di Dati Lucidi del Corso di Basi di Dati

Dettagli

IL LINGUAGGIO SQL IDENTIFICATORI E TIPI DI DATI COMANDI E ISTRUZIONI

IL LINGUAGGIO SQL IDENTIFICATORI E TIPI DI DATI COMANDI E ISTRUZIONI IL LINGUAGGIO SQL Il linguaggio SQL ( Structured Query Languages) è un linguaggio non procedurale che è diventato uno standard tra i linguaggi per la gestione dei database relazionali. Il linguaggio procedurale

Dettagli

Progettazione di basi di dati. Progettazione di basi di dati. Ciclo di vita dei sistemi informativi. Fasi del ciclo di vita [1]

Progettazione di basi di dati. Progettazione di basi di dati. Ciclo di vita dei sistemi informativi. Fasi del ciclo di vita [1] Progettazione di basi di dati Progettazione di basi di dati Requisiti progetto Base di dati Struttura Caratteristiche Contenuto Metodologia in 3 fasi Progettazione concettuale Progettazione logica Progettazione

Dettagli

Basi di dati. Concetti introduttivi ESEMPIO. INSEGNAMENTI Fisica, Analisi, Aule. Docenti. Entità Relazioni Interrogazioni. Ultima modifica: 26/02/2007

Basi 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

Dettagli

Vincoli e Triggers. Vincoli. Tipo di vincoli. Chiavi esterne

Vincoli e Triggers. Vincoli. Tipo di vincoli. Chiavi esterne Vincoli Chiavi esterne Vincoli locali e globali Triggers Leggere capitolo 7 di Garcia- Molina et al. Vincoli e Triggers Un vincolo e una relazione tra dati che il DBMS deve assicurare. Esempio: vincoli

Dettagli

Basi di Dati II. Qualità di schemi relazionali (2) Qualità di schemi relazionali. 1) Semantica degli attributi di una relazione

Basi di Dati II. Qualità di schemi relazionali (2) Qualità di schemi relazionali. 1) Semantica degli attributi di una relazione Basi di Dati II LE FASI DI PROGETTAZIONE DI UN DATABASE Indipendente dal DBMS Miniworld RACCOLTA ED ANALISI DEI REQUISITI 1 Lezione 1. Dipendenze funzionali e Normalizzazione di DB Relazionali Prof.ssa

Dettagli

Data Base. Master "Bio Info" Reti e Basi di Dati Lezione 5

Data 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

Dettagli

Lezione V. Aula Multimediale - sabato 29/03/2008

Lezione 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)

Dettagli

Corso sul linguaggio SQL

Corso 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

Dettagli