IL MODELLO RELAZIONALE

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Obiettivi dell esercitazione. Requisiti (cont.) Requisiti. Università di Roma La Sapienza A.A. 2008-2009. Facoltà di Ingegneria Sede di Latina

Obiettivi dell esercitazione. Requisiti (cont.) Requisiti. Università di Roma La Sapienza A.A. 2008-2009. Facoltà di Ingegneria Sede di Latina Università di Roma La Sapienza A.A. 2008-2009 Facoltà di Ingegneria Sede di Latina Laurea in Ingegneria Informatica ed Ingegneria dell Informazione Corso di PROGETTAZIONE DEL SOFTWARE Esercitazione sulla

Dettagli

APPUNTI DI MATEMATICA ALGEBRA \ INSIEMISTICA \ TEORIA DEGLI INSIEMI (1)

APPUNTI DI MATEMATICA ALGEBRA \ INSIEMISTICA \ TEORIA DEGLI INSIEMI (1) ALGEBRA \ INSIEMISTICA \ TEORIA DEGLI INSIEMI (1) Un insieme è una collezione di oggetti. Il concetto di insieme è un concetto primitivo. Deve esistere un criterio chiaro, preciso, non ambiguo, inequivocabile,

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

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

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

MODELLO E/R. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni

MODELLO 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

Dettagli

Informatica 3. LEZIONE 7: Fondamenti di programmazione orientata agli oggetti (1)

Informatica 3. LEZIONE 7: Fondamenti di programmazione orientata agli oggetti (1) Informatica 3 LEZIONE 7: Fondamenti di programmazione orientata agli oggetti (1) Modulo 1: Introduzione: oggetti e classi Modulo 2: Link e associazioni Modulo 3: Aggregazione Informatica 3 Lezione 7 -

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

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

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

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

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

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

Database. Si ringrazia Marco Bertini per le slides

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

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

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

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

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

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

Lezione 8. La macchina universale

Lezione 8. La macchina universale Lezione 8 Algoritmi La macchina universale Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni su i dati digitale= l informazione

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

Capitolo 13. Interrogare una base di dati

Capitolo 13. Interrogare una base di dati Capitolo 13 Interrogare una base di dati Il database fisico La ridondanza è una cosa molto, molto, molto brutta Non si devono mai replicare informazioni scrivendole in più posti diversi nel database Per

Dettagli

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi.

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. Algoritmi 1 Sommario Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. 2 Informatica Nome Informatica=informazione+automatica. Definizione Scienza che si occupa dell

Dettagli

Appunti sulla Macchina di Turing. Macchina di Turing

Appunti sulla Macchina di Turing. Macchina di Turing Macchina di Turing Una macchina di Turing è costituita dai seguenti elementi (vedi fig. 1): a) una unità di memoria, detta memoria esterna, consistente in un nastro illimitato in entrambi i sensi e suddiviso

Dettagli

Informatica (Basi di Dati)

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

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

I Sistemi Informativi

I 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

Dettagli

Basi di Dati. Conversione Modello ER in Modello Relazionale. K. Donno - Conversione Modello ER in Modello Relazionale

Basi di Dati. Conversione Modello ER in Modello Relazionale. K. Donno - Conversione Modello ER in Modello Relazionale Basi di Dati Conversione Modello ER in Modello Relazionale Il Modello Relazionale che rappresenta la realtà di interesse può essere ricavato direttamente dal Modello ER attraverso una sequenza di operazioni

Dettagli

Progettaz. e sviluppo Data Base

Progettaz. e sviluppo Data Base Progettaz. e sviluppo Data Base! Progettazione Basi Dati: Metodologie e modelli!modello Entita -Relazione Progettazione Base Dati Introduzione alla Progettazione: Il ciclo di vita di un Sist. Informativo

Dettagli

I libri di testo. Carlo Tarsitani

I libri di testo. Carlo Tarsitani I libri di testo Carlo Tarsitani Premessa Per accedere ai contenuti del sapere scientifico, ai vari livelli di istruzione, si usa comunemente anche un libro di testo. A partire dalla scuola primaria, tutti

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

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

Capitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti

Capitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti Capitolo 3 L applicazione Java Diagrammi ER Dopo le fasi di analisi, progettazione ed implementazione il software è stato compilato ed ora è pronto all uso; in questo capitolo mostreremo passo passo tutta

Dettagli

Per visualizzare e immettere i dati in una tabella è possibile utilizzare le maschere;

Per visualizzare e immettere i dati in una tabella è possibile utilizzare le maschere; Maschere e Query Le Maschere (1/2) Per visualizzare e immettere i dati in una tabella è possibile utilizzare le maschere; Le maschere sono simili a moduli cartacei: ad ogni campo corrisponde un etichetta

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

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

I casi d uso corrispondono ai compiti che l attore (che può essere una persona fisica e non) può svolgere.

I casi d uso corrispondono ai compiti che l attore (che può essere una persona fisica e non) può svolgere. UML e i Casi d USO I casi d uso specificano una sequenza di azioni che producono un risultato visibile agli attori del sistema. Essi nascono per fornire descrizioni delle capacità del sistema. I casi d

Dettagli

(anno accademico 2008-09)

(anno accademico 2008-09) Calcolo relazionale Prof Alberto Belussi Prof. Alberto Belussi (anno accademico 2008-09) Calcolo relazionale E un linguaggio di interrogazione o e dichiarativo: at specifica le proprietà del risultato

Dettagli

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

Dettagli

PROCESSO DI INDICIZZAZIONE SEMANTICA

PROCESSO DI INDICIZZAZIONE SEMANTICA PROCESSO DI INDICIZZAZIONE SEMANTICA INDIVIDUAZIONE DEI TEMI/CONCETTI SELEZIONE DEI TEMI/CONCETTI ESPRESSIONE DEI CONCETTI NEL LINGUAGGIO DI INDICIZZAZIONE TIPI DI INDICIZZAZIONE SOMMARIZZAZIONE INDICIZZAZIONE

Dettagli

DATABASE. A cura di Massimiliano Buschi

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

Dettagli

UNIVERSITA DEGLI STUDI DI BRESCIA Facoltà di Ingegneria

UNIVERSITA DEGLI STUDI DI BRESCIA Facoltà di Ingegneria ESAME DI STATO DI ABILITAZIONE ALL'ESERCIZIO DELLA PROFESSIONE DI INGEGNERE PRIMA PROVA SCRITTA DEL 22 giugno 2011 SETTORE DELL INFORMAZIONE Tema n. 1 Il candidato sviluppi un analisi critica e discuta

Dettagli

5.3 TABELLE 5.3.1 RECORD 5.3.1.1 Inserire, eliminare record in una tabella Aggiungere record Eliminare record

5.3 TABELLE 5.3.1 RECORD 5.3.1.1 Inserire, eliminare record in una tabella Aggiungere record Eliminare record 5.3 TABELLE In un sistema di database relazionali le tabelle rappresentano la struttura di partenza, che resta poi fondamentale per tutte le fasi del lavoro di creazione e di gestione del database. 5.3.1

Dettagli

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

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

DFD DISPENSA DEL CORSO DI SISTEMI INFORMATIVI UNIVERSITÀ DEGLI STUDI DI VERONA FACOLTÀ DI MM.FF.NN LAUREA SPECIALISTICA IN INFORMATICA

DFD DISPENSA DEL CORSO DI SISTEMI INFORMATIVI UNIVERSITÀ DEGLI STUDI DI VERONA FACOLTÀ DI MM.FF.NN LAUREA SPECIALISTICA IN INFORMATICA UNIVERSITÀ DEGLI STUDI DI VERONA FACOLTÀ DI MM.FF.NN LAUREA SPECIALISTICA IN INFORMATICA DISPENSA DEL CORSO DI SISTEMI INFORMATIVI Prof. Carlo Combi DFD Appunti a cura di E. Peri M. Devincenzi Indice 1

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

Database 1 biblioteca universitaria. Testo del quesito

Database 1 biblioteca universitaria. Testo del quesito Database 1 biblioteca universitaria Testo del quesito Una biblioteca universitaria acquista testi didattici su indicazione dei professori e cura il prestito dei testi agli studenti. La biblioteca vuole

Dettagli

Realizzazione di una classe con un associazione

Realizzazione di una classe con un associazione Realizzazione di una classe con un associazione Nel realizzare una classe che è coinvolta in un associazione, ci dobbiamo chiedere se la classe ha responsabilità sull associazione. Diciamo che una classe

Dettagli

Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci

Telerilevamento 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

Dettagli

PROGETTAZIONE CONCETTUALE

PROGETTAZIONE CONCETTUALE PROGETTAZIONE CONCETTUALE 1 Il Modello Concettuale Nella progettazione concettuale la descrizione dei dati da rappresentare avviene a livello astratto indipendentemente dal computer e dal software utilizzato.

Dettagli

La manutenzione come elemento di garanzia della sicurezza di macchine e impianti

La manutenzione come elemento di garanzia della sicurezza di macchine e impianti La manutenzione come elemento di garanzia della sicurezza di macchine e impianti Alessandro Mazzeranghi, Rossano Rossetti MECQ S.r.l. Quanto è importante la manutenzione negli ambienti di lavoro? E cosa

Dettagli

Fondamenti dei linguaggi di programmazione

Fondamenti dei linguaggi di programmazione Fondamenti dei linguaggi di programmazione Aniello Murano Università degli Studi di Napoli Federico II 1 Riassunto delle lezioni precedenti Prima Lezione: Introduzione e motivazioni del corso; Sintassi

Dettagli

Esercitazione 8 Mercoledì 21 gennaio 2015 (2 ore) DDL e progettazione

Esercitazione 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

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

Nozione di algoritmo. Gabriella Trucco

Nozione di algoritmo. Gabriella Trucco Nozione di algoritmo Gabriella Trucco Programmazione Attività con cui si predispone l'elaboratore ad eseguire un particolare insieme di azioni su particolari informazioni (dati), allo scopo di risolvere

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

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

Introduzione al corso

Introduzione al corso Introduzione al corso Sistemi Informativi L-B Home Page del corso: http://www-db.deis.unibo.it/courses/sil-b/ Versione elettronica: introduzione.pdf Sistemi Informativi L-B Docente Prof. Paolo Ciaccia

Dettagli

Esame di INFORMATICA

Esame di INFORMATICA Università di L Aquila Facoltà di Biotecnologie Esame di INFORMATICA Lezione 4 MACCHINA DI VON NEUMANN Anni 40 i dati e i programmi che descrivono come elaborare i dati possono essere codificati nello

Dettagli

Limiti della gestione tradizionale degli archivi. Prof. Francesco Accarino IIS Altiero Spinelli

Limiti della gestione tradizionale degli archivi. Prof. Francesco Accarino IIS Altiero Spinelli Limiti della gestione tradizionale degli archivi IIS Altiero Spinelli Limiti degli archivi tradizionali La gestione tradizionale degli archivi presenta numerosi limiti Gli archivi non consentono un accesso

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

1. PRIME PROPRIETÀ 2

1. PRIME PROPRIETÀ 2 RELAZIONI 1. Prime proprietà Il significato comune del concetto di relazione è facilmente intuibile: due elementi sono in relazione se c è un legame tra loro descritto da una certa proprietà; ad esempio,

Dettagli

Il linguaggio SQL. è di fatto lo standard tra i linguaggi per la gestione di data base relazionali.

Il linguaggio SQL. è di fatto lo standard tra i linguaggi per la gestione di data base relazionali. (Structured Query Language) : Il linguaggio è di fatto lo standard tra i linguaggi per la gestione di data base relazionali. prima versione IBM alla fine degli anni '70 per un prototipo di ricerca (System

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

Le Basi di Dati. Le Basi di Dati

Le 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

Dettagli

UN PROGRAMMA APPLICATIVO: ACCESS Access è un programma del pacchetto Office che permette di realizzare database

UN PROGRAMMA APPLICATIVO: ACCESS Access è un programma del pacchetto Office che permette di realizzare database UN PROGRAMMA APPLICATIVO: ACCESS Access è un programma del pacchetto Office che permette di realizzare database Per comprendere al meglio cosa sia un database, dobbiamo prima introdurre il concetto di

Dettagli

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

Dettagli