Edutecnica Database relazionali esercizi risolti 1

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Edutecnica Database relazionali esercizi risolti 1"

Transcript

1 Edutecnica Database relazionali esercizi risolti 1 Ordini & impiegati In una azienda si intende tenere traccia degli ordini acquisiti dagli impiegati interni. Ogni ordine deve avere indicato oltre al cliente, la data di acquisizione e l importo dell ordine. Gli impiegati devono essere qualificati per livello retributivo. Costruire il db e risolvere le seguente query: 1] Elenca i dipendenti che seguono gli ordini FIAT. 2] Elenca gli ordini seguiti dall operatore bianchi. 3] Fai un elenco dei clienti indicando la loro spesa complessiva in ordine decrescente. 4] Fai un elenco dei livelli indicando per ogni livello quanti ordini sono seguiti. 5] Fai l elenco degli ordini di febbraio e degli impiegati che li seguono. 6] Elenca gli impiegati e l importo complessivo degli ordini che hanno gestito. 7] Fai un elenco dei livelli indicando per ogni livello la somma degli importi gestiti. 8] Elenca gli impiegati e la quantità di ordini che hanno gestito. Soluzione col seguente tracciato dei campi ido cliente data importo contatore chiave primaria testo data numerico CREATE TABLE O( ido COUNTER PRIMARY KEY, cliente CHAR(20), data date, importo INTEGER); Si profilano due entità: gli ordini (O) e l entità impiegati (I) ; quest ultima deve essere correlate alla precedente; ricordiamo che ogni impiegato può seguire più ordini ed ogni ordine può essere seguito da un solo impiegato. Si tratta di una relazione 1:n (uno-molti). La tabella degli impiegati sarè caratterizzata dal seguente tracciato dei campi: idi nome livello contatore chiave primaria testo numerico CREATE TABLE I( idi COUNTER PRIMARY KEY, nome CHAR(20), livello INTEGER); La tabella degli ordini dovrà contenere la chiave esterna che ci possa ricondurre al impiegato che segue quello specifico ordine. ido cliente data importo xidi contatore chiave primaria testo data numerico numerico chiave esterna CREATE TABLE O( ido COUNTER PRIMARY KEY, cliente CHAR(20), data date, importo INTEGER, xidi INTEGER REFERENCES I(idI)); 1

2 Edutecnica Database relazionali esercizi risolti 2 Ne deriva il seguente diagramma logico: con le tabelle: idi nome livello 1 bianchi 3 2 rossi 4 3 verdi 2 4 neri 2 5 ciano 3 6 rosa 5 ido cliente data importo xidi 1 VOLVO 01/01/ BMW 01/02/ FIAT 15/01/ FORD 15/02/ NISSAN 12/03/ FIAT 07/02/ NISSAN 03/02/ SKODA 04/02/ FIAT 02/04/ BMW 15/04/ RENAULT 04/05/ NISSAN 15/05/ VOLVO 18/02/ q1: Elenca i dipendenti che seguono gli ordini FIAT. SELECT I.nome FROM I, O WHERE i.idi=o.xidi And O.cliente='FIAT'; nome rosa rossi verdi q2: Elenca gli ordini seguiti dall operatore bianchi. SELECT O.cliente FROM I, O WHERE i.idi=o.xidi And I.nome='Bianchi'; cliente VOLVO BMW q3: Fai un elenco dei clienti indicando la loro spesa complessiva in ordine decrescente. SELECT O.cliente, SUM(O.importo) AS TOT FROM I, O WHERE i.idi=o.xidi GROUP BY O.cliente ORDER BY SUM(O.importo) DESC; cliente TOT NISSAN 5550 BMW 4400 VOLVO 4000 FIAT 3400 RENAULT 1500 SKODA 1400 FORD

3 Edutecnica Database relazionali esercizi risolti 3 q4: Fai un elenco dei livelli indicando per ogni livello quanti ordini sono seguiti. SELECT I.livello, COUNT(O.xidI) AS CONTA FROM I, O WHERE i.idi=o.xidi GROUP BY livello; livello CONTA q5: Fai l elenco degli ordini di febbraio e degli impiegati che li seguono. SELECT O.cliente, O.data, I.nome FROM I, O WHERE i.idi=o.xidi AND data<#3/1/14# AND data>#1/31/14#; N.B.come le date debbano riferirsi col formato mm.gg.aa cliente data nome BMW 01/02/2014 bianchi FORD 15/02/2014 rosa FIAT 07/02/2014 rossi NISSAN 03/02/2014 verdi SKODA 04/02/2014 verdi VOLVO 18/02/2014 ciano q6: Elenca gli impiegati e l importo complessivo degli ordini che hanno gestito. SELECT I.nome, SUM(O.importo) AS TOT FROM I, O WHERE i.idi=o.xidi GROUP BY I.nome ORDER BY SUM(O.importo) DESC; nome TOT verdi 5100 ciano 4750 rosa 3700 neri 3500 bianchi 3400 rossi 800 q7: Fai un elenco dei livelli indicando per ogni livello la somma degli importi gestiti. SELECT I.livello, SUM(O.importo) AS CONTA FROM I, O WHERE i.idi=o.xidi GROUP BY livello ORDER BY SUM(O.importo) DESC; livello CONTA q8: Elenca gli impiegati e la quantità di ordini che hanno gestito. SELECT I.nome, COUNT(O.xidI) AS TOT FROM I, O WHERE i.idi=o.xidi GROUP BY I.nome ORDER BY COUNT(O.xidI) DESC; nome TOT verdi 3 rosa 3 neri 2 ciano 2 bianchi 2 rossi 1 3

4 Edutecnica Database relazionali esercizi risolti 4 Sistema bibliotecario Descrivere e realizzare un db per la gestione di una biblioteca, considerando che gli utenti possano prelevare dei libri, tenerli per un cesto periodo di tempo e poi riconsegnarli. Scrivi le seguenti interrogazioni: 1] Tutti i libri prestati a all utente Vallieri in ordine cronologico. 2] Individua i primi tre lettori che hanno letto più libri. 3] Individua tutti i possessori dei libri non ancora rientrati e il titolo degli stessi. 4] Dare lo storico dei libri chiesi in prestito da un utente indicando il periodo. 5] Fai la classifica dei libri maggiormente prestati. 6] Individua prestiti la cui durata supera i 15gg. Soluzione Se consideriamo un istantanea del sistema, un utente può prendere in prestito un certo numero di libri, un altro utente può prendere più di un libro fra quelli non scelti dal primo utente. In questo caso si configura una relazione uno-molti fra le due entità. Fra l entità L (libro) e l entità U (utente) Ma se pensiamo ad uno sviluppo nel tempo di questo servizio, il secondo utente può prendere in prestito libri riconsegnati dal primo utente. In questo caso il legame fra le due entità è di tipo molti-a-molti viene messa in evidenza la relazione P (prestito) che in pratica attualizza nel tempo il legame fra le due entità. Come ovvio essa diventerà una tabella a tutti gli effetti che conterrà le chiavi esterne pertinenti alle tabelle Libro e Utente, inoltre sarà dotata di campi Data per monitorare gli ingressi e le uscite dei vari libri dalla biblioteca. Si crea un file. La prima tabella creata si chiama U (Utente). nome campo tipo di dato idu Contatore Chiave Primaria con duplicati non ammessi Cognome Testo nome Testo La Seconda tabella si chiama L (Libro). nome campo tipo di dato idl Testo Chiave Primaria con duplicati non ammessi Titolo Testo Autore Testo 4

5 Edutecnica Database relazionali esercizi risolti 5 La tabella principale verrà chiamata P (Prestito). nome campo tipo di dato idp Contatore Chiave Primaria con duplicati non ammessi xidu Numerico Intero lungo, formato fisso, 0 cifre decimali xidl Testo inizio Data/Ora formato: Data in cifre fine Data/Ora formato: Data in cifre Ecco il contenuto delle due tabelle L (Libro) ed U (Utente). idl Titolo Autore AQ123 Algoritms Sedgewitch BP482 Pascal Wirth DW834 Transistors Coppelli HT937 Microprocessori Carroll HY237 Diodi Stortoni TR827 Compilatori Valeri idu Cognome Nome 1 Rossi Mario 2 Verdi Andrea 3 Bianchi Massimo 4 Corrada Fabio 5 Vallieri Sara 6 Garavaglia Marco 7 Esposito Marzia La tabella P (prestito) puè avere i seguenti record idp xidl xidu inizio fine 1 DW /12/ /12/ AQ /01/ /01/ BP /01/ /01/ HY /01/ /01/ TR /02/ /02/ TR /02/ /02/ HY /03/ /03/ AQ /04/ /05/ BP /04/ /04/ DW /04/ /04/ HT /04/ /05/ TR /05/ /06/ AQ /05/ /06/ HY /05/ BP /05/ DW /06/ TR /06/2004 Lo schema logico è il seguente q1: Tutti i libri prestati a all utente Vallieri in ordine cronologico. SELECT L.titolo,P.inizio,P.fine FROM L,P,U WHERE L.idL=P.xidL AND U.idU=P.xidU AND U.cognome='vallieri' ORDER BY P.inizio; titolo inizio fine Diodi 15/01/ /01/2004 Algoritms 07/05/ /06/2004 Diodi 15/05/2004 Compilatori 18/06/2004 5

6 Edutecnica Database relazionali esercizi risolti 6 q2: Individua i primi tre lettori che hanno letto più libri. SELECT TOP 3 U.cognome, COUNT(P.xidU) AS TOT FROM L, P, U WHERE L.idL=P.xidL AND U.idU=P.xidU GROUP BY U.cognome ORDER BY COUNT(P.xidU) DESC; cognome TOT Garavaglia 5 Vallieri 4 Bianchi 3 q3: Individua tutti i possessori dei libri non ancora rientrati e il titolo degli stessi. SELECT P.idP, U.Cognome, L.Titolo FROM L, U, P WHERE L.idL=P.xidL AND U.idU=P.xidU AND P.fine Is Null; idp Cognome Titolo 14 Vallieri Diodi 15 Bianchi Pascal 16 Garavaglia Transistors 17 Vallieri Compilatori q4: Dare lo storico dei libri chiesi in prestito da un utente indicando il periodo. SELECT P.idP, P.inizio, P.fine, L.Titolo FROM P, L, U WHERE L.idL=P.xidL AND U.idU=P.xidU AND U.Cognome=[Cognome:]; idp inizio fine Titolo 5 01/02/ /02/2004 Compilatori 11 18/04/ /05/2004 Microprocessori q5: Fai la classifica dei libri maggiormente prestati. (per l utente Corrada) SELECT L.titolo, Count(P.xidL) AS TOT FROM P,L WHERE L.idL=P.xidL AND P.xidL IS NOT NULL GROUP BY L.titolo HAVING Count(P.xidL) ORDER BY Count(P.xidL) DESC; titolo TOT Compilatori 4 Transistors 3 Pascal 3 Diodi 3 Algoritms 3 Microprocessori 1 q6: Individua prestiti la cui durata supera i 15gg. SELECT P.idP, U.Cognome, L.Titolo FROM P,L,U WHERE L.idL=P.xidL AND U.idU=P.xidU AND DATEDIFF('d',P.inizio,P.fine)>15; idp Cognome Titolo 8 Rossi Algoritms 9 Verdi Pascal 11 Corrada Microprocessori 12 Garavaglia Compilatori 13 Vallieri Algoritms 6

7 Edutecnica Database relazionali esercizi risolti 7 Immobili Si considerino i seguenti fatti di interesse di una agenzia immobiliare: ci sono degli immobili in vendita; di un immobile, identificato da un codice, interessa il tipo (appartamento,villa,...), la superficie, il numero di vani, l anno di fabbricazione, eventuali annessi (garage, cantina, giardino,...), il prezzo richiesto, il proprietario. Bisogna catalogare i proprietari; un proprietario e' identificato da un codice; di ogni proprietario interessa il cognome, il nome, gli immobili in vendita di cui è proprietario. (ipotizzare che un immobile possa avere un solo proprietario). Le query da applicare sono le seguenti: 1.Vogliamo sapere quanti box sono presenti nel database 2.Vogliamo sapere quante ville hanno a disposizione un giardino. 3.Vogliamo sapere quanti mq di superficie dispone il sig.bianchi solo sugli immobili. 4.Elencare tutti i possessori di una villa. 5.Elencare tutti i possessori di un appartamento con Box. 6.Elencare tutti i possessori di immobili la cui data di costruzione è successiva al Produrre una vista dei proprietari di appartamenti con a fianco il numero di vani complessivi disponibili. 8.Produrre una vista dei proprietari la cui somma dei mq degli immobili posseduti sia superiore a 400 mq. Soluzione Un proprietario (P) può possedere più immobili, un immobile ha un solo proprietario. si tratta di una relazione 1:n (uno-molti) Nel testo si parla di annessi e si intuisce che che ogni immobile può essere dotato di molteplici annessi, mentre ogni annesso fa capo ad un singolo immobile. Il diagramma concettuale che ci serve (dotato di campi) può essere il seguente. Arriviamo dunque alle query di creazione: 7

8 Edutecnica Database relazionali esercizi risolti 8 CREATE TABLE P (IdP COUNTER PRIMARY KEY, Cognome CHAR(20), Nome CHAR(20)); CREATE TABLE I (IdI COUNTER PRIMARY KEY, XidP INTEGER REFERENCES P(IdP), Tipo CHAR(20), Vani Integer, Costo Long, Sup Integer, Anno integer); CREATE TABLE A (XidI INTEGER REFERENCES I(IdI), Tipo CHAR(20), Sup Integer); Ecco i valori da inserire nella tabella P (dei proprietari) e I degli immobili IdP Cognome Nome 1 Rossi Mario 2 Verdi Giovanni 3 Gialli Andrea 4 Neri Graziano 5 Bianchi Walter 6 Magenta Maria IdI XidP Tipo Vani Costo Sup Anno 1 1 Villa Appartamento Appartamento Capannone Villa Villa Capannone Appartamento Villa Appartamento ed ecco l ultima tabella da compilare: la tabella A degli annessi. XidI Tipo Sup 1 Garage 15 1 Giardino Rimessa 90 2 Cantina 30 2 Box 12 3 Posto Auto 15 3 Soffitta 30 4 Rimessa Posto Auto Rimessa 50 8 Box 25 8 Cantina 40 9 Giardino Box Cantina Giardino 20 Dopo aver popolato in via preliminare le suddette tabelle eseguiamo le query q1: vogliamo sapere quanti box sono presenti nel database SELECT COUNT(*) AS TOTALE FROM A WHERE A.Tipo='BOX'; TOTALE 3 8

9 Edutecnica Database relazionali esercizi risolti 9 q2: vogliamo sapere quante ville hanno a disposizione un giardino. SELECT COUNT(*) AS TOTALE FROM I, A WHERE A.XidI=I.IdI AND A.Tipo='Giardino'; TOTALE 2 q3: vogliamo sapere quanti mq di superficie dispone il sig.bianchi solo sugli immobili. SELECT SUM(Sup) AS TOT FROM I, P WHERE P.idP=I.XidP AND P.Cognome='Bianchi'; TOT 825 q4: elencare tutti i possessori di una villa. SELECT DISTINCT P.Cognome, I.Tipo FROM A,I,P WHERE A.XidI=I.idI AND P.idP=I.XidP AND I.Tipo='Villa'; Cognome Magenta Rossi Tipo Villa Villa q5: Elencare tutti i possessori di un appartamento con Box. SELECT DISTINCT P.Cognome, I.Tipo, A.Tipo FROM A, I, P WHERE A.XidI=I.idI AND P.idP=I.XidP AND A.Tipo='Box'; Cognome I.Tipo A.Tipo Bianchi Appartamento Box Magenta Appartamento Box Rossi Appartamento Box q6: Elencare tutti i possessori di immobili la cui data di costruzione è successiva al SELECT P.Cognome, I.Tipo, I.Anno FROM I,P WHERE P.idP=I.XidP AND I.Anno>1996; Cognome Tipo Anno Bianchi Capannone 1998 Magenta Villa 1997 Magenta Appartamento 1999 q7: Produrre una vista dei proprietari di appartamenti con a fianco il numero di vani complessivi disponibili SELECT P.Cognome, SUM(I.Vani) AS TOT FROM I,P WHERE P.idP=I.XidP AND I.Tipo='Appartamento' GROUP BY P.Cognome; Cognome TOT Bianchi 3 Magenta 4 Rossi 4 Verdi 8 q8: Produrre una vista dei proprietari la cui somma dei mq degli immobili posseduti sia superiore a 400 mq. SELECT P.Cognome, SUM(I.Sup) AS TOT FROM I,P WHERE P.idP=I.XidP GROUP BY P.Cognome HAVING SUM(I.Sup)>=400; Cognome TOT Bianchi 825 Gialli 500 9

10 Edutecnica Database relazionali esercizi risolti 10 AutoMotoSprint La società Automotosprint si occupa di vendere ricambi meccanici per aziende automotobilistiche. Si vogliono organizzare le informazioni relative ai clienti di questa azienda in relazione agli ordini effettuati. Ogni ordine può essere costituito da uno o più prodotti venduti in determinati quantitativi. Definire le query di creazioni ed eseguire le seguenti interrogazioni: 1.Elenco degli ordini effettuati dalla BMW. 2.Elenco dei clienti che comprano manovelle. 3.Elenco degli ordini e dei rispettivi clienti con importo complessivo organizzato per importo. 4.Indica il numero e la data di tutti gli ordini dove sono state vendute bielle e il loro numero. 5.Elenca i clienti indicando quanti ordini hanno effettuato, 6.Elenca i clienti indicando il quantitativo di pezzi acquistato. Soluzione Il contesto sembra chiaro un cliente può effettuare (nel tempo) più ordini. Un ordine può fare riferimento ad un solo cliente. In un ordine possono essere acquistati più prodotti. Un prodotto può essere acquistato in molteplici ordini. Individuiamo le tre entità Ordini (O) Prodotti (P) e Clienti (C). Essendoci una relazione n:n fra gli ordini e i prodotti, effettuiamo una ulteriore derivazione, introducendo la tabella Distinta (D). Se volessimo definire i campi per la tabella Clienti (C) idc Contatore nome Testo CREATE TABLE C (idc COUNTER PRIMARY KEY, nome CHAR(20)); Se volessimo definire i campi per la tabella Prodotti (P) idp Contatore CREATE TABLE P prz Numerico (idp COUNTER PRIMARY KEY, prd Testo prz INTEGER, prd CHAR(20)); Se volessimo definire i campi per la tabella Ordini (O) ido data xidc Contatore Date Numerico CREATE TABLE O( ido COUNTER PRIMARY KEY, data date, xidc INTEGER REFERENCES C(idC)); Questa ultima è la chiave esterna per idc. 10

11 Edutecnica Database relazionali esercizi risolti 11 Se volessimo definire i campi per la tabella Distinta (D) idd xidp xido qta Contatore Numerico Numerico Numerico CREATE TABLE D( idd COUNTER PRIMARY KEY, qta INTEGER, xidp INTEGER REFERENCES P(idP), xido INTEGER REFERENCES O(idO)); sono evidenti le due chiavi esterne Si deriva il modello logico e poi possiamo popolare le tabelle con valori di test tabella P (prodotti) idp prz prd 1 9 biella 2 9 manovella 3 2 ruota 4 3 stelo 5 3 capsula 6 5 carter 7 7 nipplo tabella C (clienti) idc nome 1 BMW 2 FIAT 3 FORD 4 VOLVO 11

12 Edutecnica Database relazionali esercizi risolti 12 tabella O (ordini) ido data xidc 1 01/01/ /02/ /03/ /01/ /02/ /01/ /04/ /05/ /02/ /03/ /04/ /05/ tabella D (distinta) idd qta xidp xido q1: Elenco degli ordini effettuati dalla BMW. SELECT O.idO, O.data FROM O, C WHERE C.idC=O.xidC AND C.nome='BMW'; q2: Elenco dei clienti che comprano manovelle. SELECT C.nome FROM O, C, D, P WHERE C.idC=O.xidC AND O.idO=D.xidO AND P.idP=D.xidP AND P.prd='manovella'; ido nome BMW FIAT FORD VOLVO data 1 01/01/ /02/ /03/2014 q3: Elenco degli ordini e dei rispettivi clienti con importo complessivo organizzato per importo. SELECT C.nome, O.idO, SUM(D.qta*P.prz) AS TOT FROM O, C, D, P WHERE C.idC=O.xidC AND O.idO=D.xidO AND P.idP=D.xidP GROUP BY O.idO, C.nome ORDER BY SUM(D.qta*P.prz) DESC; nome ido TOT FIAT FORD 7 54 BMW 3 52 BMW 2 37 BMW 1 33 FORD 6 29 VOLVO VOLVO FORD 8 18 FIAT 5 12 VOLVO 9 6 VOLVO

13 Edutecnica Database relazionali esercizi risolti 13 q4: Indica il numero e la data di tutti gli ordini dove sono state vendute bielle e il loro numero. SELECT O.idO, O.data, D.qta FROM O, D, P WHERE O.idO=D.xidO AND P.idP=D.xidP AND P.prd='biella'; ido data qta 1 01/01/ /04/ /05/ /05/ q5: Elenca i clienti indicando quanti ordini hanno effettuato, SELECT C.nome, COUNT(*) AS TOT FROM O, C WHERE C.idC=O.xidC GROUP BY C.nome; nome TOT BMW 3 FIAT 2 FORD 3 VOLVO 4 q6: Elenca i clienti indicando il quantitativo di pezzi acquistato. SELECT C.nome, SUM(D.qta) AS TOT FROM O, C, D WHERE C.idC=O.xidC AND O.idO=D.xidO GROUP BY C.nome ORDER BY SUM(D.qta) DESC; nome TOT BMW 21 FIAT 18 FORD 15 VOLVO 11 13

14 Edutecnica Database relazionali esercizi risolti 14 Spettacoli Organizzare attraverso un diagramma ER e, successivamente, attraverso uno schema relazionale, le informazioni relative agli spettacoli teatrali e cinematografici che si svolgono nelle diverse città di una regione. In modo da fornire alla cittadinanza informazioni sulle date nelle quali si svolgono gli spettacoli, sul prezzo dei biglietti, sulla tipologia degli spettacoli tra i quali scegliere, sull opportunità di scelta tra spettacoli diversi di una città, sulle sale e sugli indirizzi delle sedi degli spettacoli. Esegui le interrogazioni 1. Elencare tutti gli eventi per data, per città, e per teatro che si svolgono fra il 10/01/2001 e 20/01/2001inclusi. 2. Contare quanti eventi si svolgono nella città di Rho. 3. Eseguire la somma del costo dei biglietti per una singola persona) per tutti gli spettacoli che vengono svolti nel cinema Ariston (di Legnano). 4. Dire in quali sale viene eseguito lo spettacolo maggiormente rappresentato e quando. Soluzione Si identificano delle entità fondamentali come la Città (C) e i teatri (T). Ovviamente in ogni città ci possono essere più teatri, mentre un teatro può stare in una sola città. Si individua l entità Spettacoli (S); si potrebbe pensare di associare Spettacoli - Città con una relazione n-n L associazione n-n si traduce nella relazione Evento (E) che oltre alle chiavi esterne di C ed S conterrà il campo data dell evento. Questa soluzione mette in evidenza, però, come individuato un evento in una certa data in una certa città sia impossibile risalire alla sala teatrale T nel quale tale evento viene messo in atto. L inversione della posizione fra le entità T e C risolve questa incongruenza, è ora possibile tentare di impostare la versione completa del db introducendo un numero minimo di attributi al fine di testare il tutto. 14

15 Edutecnica Database relazionali esercizi risolti 15 C idc contatore chiave primaria nome testo nome della città S ids contatore chiave primaria tit testo titolo spettacolo pre numerico intero :prezzo del biglietto CREATE TABLE C (idc COUNTER PRIMARY KEY, nome CHAR(20)); CREATE TABLE S (ids COUNTER PRIMARY KEY, tit CHAR(20), pre INTEGER); T idt contatore chiave primaria nomt testo nome del teatro xidc numerico intero lungo (chiave esterna) E ide contatore chiave primaria data data/ora data in cifre xidt numerico intero lungo (chiave esterna) xids numerico intero lungo (chiave esterna) CREATE TABLE T (idt COUNTER PRIMARY KEY, nomt CHAR(20), xidc INTEGER REFERENCES C(idc)); CREATE TABLE E (ide COUNTER PRIMARY KEY, data date, xids INTEGER REFERENCES S(ids), xidt INTEGER REFERENCES T(idt)); Popoliamo le tabelle con valori di test. tabella C (città) idc nome 1 rho 2 legnano tabella S (spettacolo) ids tit pre 1 alpha 8 2 beta 8 3 gamma 8 4 delta 8 5 tau 12 6 omega 15 7 lambda 10 8 phi 14 tabella T (teatro) idt nomt xidc 1 capitol 1 2 roxy 1 3 centrale 2 4 ariston 2 tabella E (evento) ide xidt xids data /01/ /01/ /01/ /01/ /01/ /01/ /01/ /01/

16 Edutecnica Database relazionali esercizi risolti 16 q1: Elencare tutti gli eventi per data, per città, e per teatro che si svolgono fra il 10/01/2001 e 20/01/2001inclusi. SELECT C.nome, T.nomt, E.data, S.tit FROM C,T,E,S WHERE C.idc=T.xidc AND T.idt=E.xidt AND S.ids=E.xids AND E.data>=#01/10/2001# AND E.data<=#01/20/2001#; nome nomt data tit rho roxy 14/01/2001 tau legnano ariston 10/01/2001 delta legnano ariston 20/01/2001 omega q2: Contare quanti eventi si svolgono nella città di Rho. SELECT COUNT(*) AS TOT FROM C, T, E WHERE C.idc=T.xidc AND T.idt=E.xidt AND C.nome='rho'; TOT 4 q3: Eseguire la somma del costo dei biglietti per una singola persona) per tutti gli spettacoli che vengono svolti nel cinema Ariston (di Legnano). SELECT SUM(S.pre) AS TOT FROM S, T, E WHERE T.idt=E.xidt AND S.ids=E.xids AND T.nomt='ariston'; TOT 23 q4: Dire in quali sale viene eseguito lo spettacolo maggiormente rappresentato e quando. SELECT T.nomt, E.data FROM T, E WHERE T.idt=E.xidt AND E.xids= ( SELECT TOP 1 E.xids FROM E GROUP BY E.xids ORDER BY COUNT(*) DESC); nomt data roxy 14/01/2001 centrale 30/01/

17 Edutecnica Database relazionali esercizi risolti 17 Centro assistenza didattica In un centro di assistenza didattica si deve realizzare un db che tenga traccia delle ripetizioni fatte dagli insegnanti ai vari allievi.considera che l alunno svolge la lezione secondo un format predefinito a cui corrispondono determinati costi: 1 ora:10 2 ore:15 3 ore:20 Disegna un db che descriva l attività di questo centro assistenza. Esegui le seguenti interrogazioni: 1.Elenca gli alunni seguiti dall insegnante Bianchi nel giorno 2. 2.Individua il nome e il tel. dei professori che devono seguire l alunno Alpha il giorno 3. 3.Calcola le ore eseguite dal prof.rossi in totale. 4.Calcola le ore e il compenso delle lezioni per l alunno Gamma il giorno 3. Soluzione I Professori (P) sono classificati per nome e per numero di telefono. Gli allievi (A) sono classificati per nome e per indirizzo di studio (liceo,ragioneria,meccanica..). E evidente una relazione n:n fra le due entità; un professore può seguire più allievi ed ogni allievo può avere più professori. Le regole di derivazione impongono la creazione di una terza tabella che noi chiamiamo lezione (L) che come informazione aggiuntiva potrebbe contenere la data della lezione effettuata. Dobbiamo però considerare le specifiche del problema che prevedono dei costi differenziati a secondo del numero di ore di cui è costituita la lezione stessa. Si può in questo caso utilizzare una struttura relazionale ternaria. 17

18 Edutecnica Database relazionali esercizi risolti 18 Alla relazione L viene associata una terza entità Ore (O) contenente il listino prezzi che caratterizza ogni singola lezione prenotata Si ottiene dunque il diagramma concettuale riportato sopra. Ne consegue i diagramma logico seguente: Le query di creazione sono le seguenti CREATE TABLE P (idp COUNTER PRIMARY KEY, nome CHAR(20), tel CHAR(12)); CREATE TABLE A (ida COUNTER PRIMARY KEY, nome CHAR(20), ist CHAR(12)); CREATE TABLE O (ido INTEGER PRIMARY KEY, costo INTEGER); CREATE TABLE L (idl COUNTER PRIMARY KEY, data date, xidp INTEGER REFERENCES P(idp), xido INTEGER REFERENCES O(ido), xida INTEGER REFERENCES A(ida)); Con queste quattro query si ottiene il diagramma logico riportato sopra; la query L va ovviamente eseguita per ultima. possiamo testare il db coi seguenti dati A ida nome ist 1 alpha liceo 2 beta liceo 3 gamma geometra P idp nome tel 1 bianchi rossi verdi 789 O ido costo L idl data xidp xido xida 1 01/01/ /01/ /01/ /01/ /01/ /01/ /01/ /01/ /01/ dopo di ciò è possibile realizzare le query di interrogazione. q1: Elenca gli alunni seguiti dall insegnante Bianchi nel giorno 2. SELECT A.nome FROM P, L, A WHERE P.idp=L.xidp AND A.ida=L.xida AND P.nome='bianchi' AND L.data=#01/02/01#; nome gamma beta 18

19 Edutecnica Database relazionali esercizi risolti 19 q2: Individua il nome e il tel. dei professori che devono seguire l alunno Alpha il giorno 3. SELECT P.nome, P.tel FROM P, L, A WHERE P.idp=L.xidp AND A.ida=L.xida AND A.nome='alpha' AND L.data=#01/03/01#; nome tel rossi 456 verdi 789 q3: Calcola le ore eseguite dal prof.rossi in totale. SELECT SUM(L.xido) AS TOT FROM P, L WHERE P.idp=L.xidp AND P.nome='rossi'; TOT 6 q4: Calcola le ore e il compenso delle lezioni per l alunno Gamma il giorno 3. SELECT SUM(L.xido) AS ORE, SUM(O.costo) AS TOT FROM A, L, O WHERE A.idA=L.xidA AND O.ido=L.xido AND A.nome='gamma' AND L.data=#1/3/2001#; ORE TOT

Volumi di riferimento

Volumi di riferimento Simulazione seconda prova Esame di Stato Gestione di un centro agroalimentare all ingrosso Parte prima) Un nuovo centro agroalimentare all'ingrosso intende realizzare una base di dati per l'attività di

Dettagli

Basi di Dati Corso di Laura in Informatica Umanistica

Basi di Dati Corso di Laura in Informatica Umanistica Basi di Dati Corso di Laura in Informatica Umanistica Appello del 10/09/2010 Parte 1: Algebra Relazionale e linguaggio SQL Docente: Giuseppe Amato Sia dato il seguente schema di base di dati per la gestione

Dettagli

M733 ESAME DI STATO DI ISTITUTO TECNICO COMMERCIALE CORSO DI ORDINAMENTO

M733 ESAME DI STATO DI ISTITUTO TECNICO COMMERCIALE CORSO DI ORDINAMENTO Seconda prova scritta Ministero dell Istruzione, dell Università e della Ricerca M733 ESAME DI STATO DI ISTITUTO TECNICO COMMERCIALE CORSO DI ORDINAMENTO Indirizzo: PROGRAMMATORI Tema di: INFORMATICA GENERALE

Dettagli

Esercitazione di Basi di Dati

Esercitazione di Basi di Dati Esercitazione di Basi di Dati Corso di Fondamenti di Informatica 15/22 Aprile 2004 Progettazione di un Database (DB) Marco Pennacchiotti pennacchiotti@info.uniroma2.it Tel. 0672597334 Ing.dell Informazione,

Dettagli

Esercitazione query in SQL L esercitazione viene effettuata sul database viaggi e vacanze che prevede il seguente modello E/R:

Esercitazione query in SQL L esercitazione viene effettuata sul database viaggi e vacanze che prevede il seguente modello E/R: Esercitazione query in SQL L esercitazione viene effettuata sul database viaggi e vacanze che prevede il seguente modello E/R: Si consiglia di creare il data base, inserire i dati nelle tabelle, provare

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

Basi di Dati 1 Prof. L. Tanca e F. A. Schreiber APPELLO DEL 9 SETTEMBRE 2015 Tempo: 2h30m

Basi di Dati 1 Prof. L. Tanca e F. A. Schreiber APPELLO DEL 9 SETTEMBRE 2015 Tempo: 2h30m Basi di Dati 1 Prof. L. Tanca e F. A. Schreiber APPELLO DEL 9 SETTEMBRE 2015 Tempo: 2h30m Si consideri il seguente schema di base di dati, che vuole memorizzare informazioni relative a un sito di affitto

Dettagli

Esercizio data base "Biblioteca"

Esercizio data base Biblioteca Rocco Sergi Esercizio data base "Biblioteca" Database 2: Biblioteca Testo dell esercizio Si vuole realizzare una base dati per la gestione di una biblioteca. La base dati conterrà tutte le informazioni

Dettagli

Concetti fondamentali dei database database Cos'è un database Principali database

Concetti fondamentali dei database database Cos'è un database Principali database Concetti fondamentali dei database Nella vita di tutti i giorni si ha la necessità di gestire e manipolare dati. Le operazioni possono essere molteplici: ricerca, aggregazione con altri e riorganizzazione

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

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

ESEMPI DI QUERY SQL. Esempi di Query SQL Michele Batocchi AS 2012/2013 Pagina 1 di 7

ESEMPI DI QUERY SQL. Esempi di Query SQL Michele Batocchi AS 2012/2013 Pagina 1 di 7 ESEMPI DI QUERY SQL Dati di esempio... 2 Query su una sola tabella... 2 Esempio 1 (Ordinamento)... 2 Esempio 2 (Scelta di alcune colonne)... 3 Esempio 3 (Condizioni sui dati)... 3 Esempio 4 (Condizioni

Dettagli

Compito Sistemi Informativi LA. Tempo concesso : 90 minuti 23 Settembre 03 Nome: Cognome: Matricola:

Compito Sistemi Informativi LA. Tempo concesso : 90 minuti 23 Settembre 03 Nome: Cognome: Matricola: 23 Settembre 03 Nome: Cognome: Matricola: Esercizio 1 Si considerino le seguenti specifiche relative alla realizzazione della base dati di un villaggio vacanze e si definisca il relativo schema E/R (nella

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

Basi di Dati Prof. L. Tanca e F. A. Schreiber APPELLO DEL 12 FEBBRAIO 2015 PARTE 1

Basi di Dati Prof. L. Tanca e F. A. Schreiber APPELLO DEL 12 FEBBRAIO 2015 PARTE 1 Basi di Dati Prof. L. Tanca e F. A. Schreiber APPELLO DEL 12 FEBBRAIO 2015 PARTE 1 Si consideri il seguente schema di base di dati che vuole tenere traccia delle attività di un autofficina. MECCANICO (CodiceFiscale,

Dettagli

Corso di Sistemi di Elaborazione delle Informazioni I Anno 2005/2006. Esercizi entità relazione risolti. a cura di Angela Campagnaro 802749

Corso di Sistemi di Elaborazione delle Informazioni I Anno 2005/2006. Esercizi entità relazione risolti. a cura di Angela Campagnaro 802749 Corso di Sistemi di Elaborazione delle Informazioni I Anno 2005/2006 Esercizi entità relazione risolti a cura di Angela Campagnaro 802749 Indice: Esercizio 1: Un insieme di officine 1.1 Testo esercizio.3

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

Soluzione dell esercizio del 2 Febbraio 2004

Soluzione dell esercizio del 2 Febbraio 2004 Soluzione dell esercizio del 2 Febbraio 2004 1. Casi d uso I casi d uso sono riportati in Figura 1. Figura 1: Diagramma dei casi d uso. E evidenziato un sotto caso di uso. 2. Modello concettuale Osserviamo

Dettagli

Basi di Dati e Microsoft Access

Basi di Dati e Microsoft Access Basi di Dati e Microsoft Access Lun: 16-18 e Mer: 14-17 Alessandro Padovani padoale@email.it Database: definizione Un database (DB) è una collezione di informazioni organizzata in gruppi, che consentono

Dettagli

a.a. 2012/13 12 Novembre 2012 Preparazione al Test in itinere, Compito A 1. Modellare tramite uno schema entità- relazione la seguente base di dati:

a.a. 2012/13 12 Novembre 2012 Preparazione al Test in itinere, Compito A 1. Modellare tramite uno schema entità- relazione la seguente base di dati: Gestione dei dati e della conoscenza, a.a. 2012/13 12 Novembre 2012 Preparazione al Test in itinere, Compito A 1. Modellare tramite uno schema entità- relazione la seguente base di dati: Si vuole modellare

Dettagli

ARCHIVI E DATABASE (prof. Ivaldi Giuliano)

ARCHIVI E DATABASE (prof. Ivaldi Giuliano) ARCHIVI E DATABASE (prof. Ivaldi Giuliano) Archivio: è un insieme di registrazioni (o records) ciascuna delle quali è costituita da un insieme prefissato di informazioni elementari dette attributi (o campi).

Dettagli

Corso di Basi di Dati A.A. 2014/2015

Corso di Basi di Dati A.A. 2014/2015 Corso di Laurea in Ingegneria Gestionale Sapienza - Università di Roma Corso di Basi di Dati A.A. 2014/2015 Esercitazione su Progettazione Logica Tiziana Catarci, Andrea Marrella Ultimo aggiornamento :

Dettagli

MODELLO E/R. Modellazione dei dati

MODELLO E/R. Modellazione dei dati MODELLO E/R Maria Mirto Modellazione dei dati Modellare i dati significa: costruire una rappresentazione semplificata della realtà osservata, individuandone gli elementi caratterizzanti e i legami intercorrenti

Dettagli

Compito DA e BD. Tempo concesso: 90 minuti 12 giugno 03 Nome: Cognome: Matricola: Esercizio 1

Compito DA e BD. Tempo concesso: 90 minuti 12 giugno 03 Nome: Cognome: Matricola: Esercizio 1 Compito DA e BD. Tempo concesso: 90 minuti 12 giugno 03 Nome: Cognome: Matricola: Esercizio 1 Si considerino le seguenti specifiche relative alla realizzazione della base di dati di una facoltà e si definisca

Dettagli

Si formulino le seguenti interrogazioni tramite il linguaggio SQL:

Si formulino le seguenti interrogazioni tramite il linguaggio SQL: Informatica per le Scienze Umane - Corso di Laurea in Lettere Appello del 15.01.2009 - Docente: Massimo Coppola Modello Relazionale e SQL Si consideri la seguente base di dati relativa alla redazione di

Dettagli

Database 3 affitto veicoli. Testo del quesito

Database 3 affitto veicoli. Testo del quesito Database 3 affitto veicoli Testo del quesito La società salento trasporti dispone di diversi tipi di veicoli (moto, auto, furgoni, camion, ) che affitta ai propri clienti. La società vuole informatizzare

Dettagli

Esercizio sui data base "Gestione conti correnti"

Esercizio sui data base Gestione conti correnti Database "Gestione conto correnti" Testo del quesito La banca XYZ vuole informatizzare le procedure di gestione dei conti correnti creando un archivio dei correntisti (Cognome, Nome, indirizzo, telefono,

Dettagli

Traccia di soluzione dell esercizio del 25/1/2005

Traccia di soluzione dell esercizio del 25/1/2005 Traccia di soluzione dell esercizio del 25/1/2005 1 Casi d uso I casi d uso sono in Figura 1. Ci sono solo due attori: il Capo officina e il generico Meccanico. Figura 1: Diagramma dei casi d uso. 2 Modello

Dettagli

Introduzione alla teoria dei database relazionali. Come progettare un database

Introduzione alla teoria dei database relazionali. Come progettare un database Introduzione alla teoria dei database relazionali Come progettare un database La struttura delle relazioni Dopo la prima fase di individuazione concettuale delle entità e degli attributi è necessario passare

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

Progettazione di Database. Un Esempio

Progettazione di Database. Un Esempio Progettazione di Database Un Esempio Data Base Management System Applicazione 1 Applicazione 2 Applicazione 3 DBMS A B C D E Il Modello Relazionale Una relazione è costituita su un insieme di domini, non

Dettagli

1. Schema concettuale della base di dati Lo schema concettuale (o statico) è uno dei due schemi del progetto concettuale di un sistema informativo.

1. Schema concettuale della base di dati Lo schema concettuale (o statico) è uno dei due schemi del progetto concettuale di un sistema informativo. Esame di Stato Istituto Tecnico Industriale Proposta di soluzione della seconda prova Indirizzo: INFORMATICA Tema: INFORMATICA Anno Scolastico: 2003-2004 1. Schema concettuale della base di dati Lo schema

Dettagli

Corso Sistemi Informativi Avanzati. Programma 30 set 2015. Installazione Macchina Virtuale. Introduzione alla BI nelle Aziende.

Corso Sistemi Informativi Avanzati. Programma 30 set 2015. Installazione Macchina Virtuale. Introduzione alla BI nelle Aziende. Programma 30 set 205 Installazione Macchina Virtuale Introduzione alla BI nelle Aziende Introduzione SQL Macchina Virtuale È un emulazione di un computer su un altro computer Stesso punto di partenza per

Dettagli

Utilizzando Microsoft Access. Si crea la tabella Anagrafica degli alunni,le Materie e i voti si mettono alcuni campi

Utilizzando Microsoft Access. Si crea la tabella Anagrafica degli alunni,le Materie e i voti si mettono alcuni campi Vogliamo creare una struttura per permettere di memorizzari i voti della classe in tutte le materie Per fare questo untilizziamo tre tabelle Alunni,materie,voti Alunni Materie Voti Creo un record per ogni

Dettagli

Raggruppamenti Conti Movimenti

Raggruppamenti Conti Movimenti ESERCITAZIONE PIANO DEI CONTI Vogliamo creare un programma che ci permetta di gestire, in un DB, il Piano dei conti di un azienda. Nel corso della gestione d esercizio, si potranno registrare gli articoli

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

Gestione Voti Scolastici

Gestione Voti Scolastici Gestione Voti Scolastici Progettare un modello di dati per la gestione delle informazioni riguardanti le prove, nelle diverse materie, sostenute dagli studenti di una scuola media superiore. Il sistema

Dettagli

ESAME di INFORMATICA e ARCHIVIAZIONE

ESAME di INFORMATICA e ARCHIVIAZIONE UNIVERSITÀ DEGLI STUDI DI UDINE Facoltà di Medicina e Chirurgia CORSO DI LAUREA IN TECNICHE DI RADIOLOGIA MEDICA PER IMMAGINI E RADIOTERAPIA ESAME di INFORMATICA e ARCHIVIAZIONE 28 settembre 2011 1 Progettazione

Dettagli

COGNOME MATRICOLA. Con vincoli di integrita referenziale: INTERVENTO.CodTecnico à TECNICO.Codice INTERVENTO.MatCaldaia à CALDAIA.

COGNOME MATRICOLA. Con vincoli di integrita referenziale: INTERVENTO.CodTecnico à TECNICO.Codice INTERVENTO.MatCaldaia à CALDAIA. NOME COGNOME MATRICOLA ESERCIZIO 1 (15 punti) Dato il seguente schema relazionale, che modella le informazioni relative ad un azienda che fornisce assistenza caldaie a domicilio: TECNICO(Codice, Nome,

Dettagli

Abilità Informatiche A.A. 2010/2011 Lezione 9: Query Maschere Report. Facoltà di Lingue e Letterature Straniere

Abilità Informatiche A.A. 2010/2011 Lezione 9: Query Maschere Report. Facoltà di Lingue e Letterature Straniere Abilità Informatiche A.A. 2010/2011 Lezione 9: Query Maschere Report Facoltà di Lingue e Letterature Straniere Le QUERY 2 Che cos è una Query? Una Query rappresenta uno strumento per interrogare un database.

Dettagli

Soluzione dell esercizio del 12 Febbraio 2004

Soluzione dell esercizio del 12 Febbraio 2004 Soluzione dell esercizio del 12/2/2004 1 Soluzione dell esercizio del 12 Febbraio 2004 1. Casi d uso I casi d uso sono riportati in Figura 1. Figura 1: Diagramma dei casi d uso. 2. Modello concettuale

Dettagli

Dispensa di database Access

Dispensa di database Access Dispensa di database Access Indice: Database come tabelle; fogli di lavoro e tabelle...2 Database con più tabelle; relazioni tra tabelle...2 Motore di database, complessità di un database; concetto di

Dettagli

Azioni. Select e join non consentono di modificare il contenuto del DB. Inserzione di nuovi dati. Azioni desiderate. Aggiornamento di dati

Azioni. Select e join non consentono di modificare il contenuto del DB. Inserzione di nuovi dati. Azioni desiderate. Aggiornamento di dati Azioni Select e join non consentono di modificare il contenuto del DB Azioni desiderate Inserzione di nuovi dati Aggiornamento di dati Cancellazione di dati Aggiunta di un record insert into utenti(nome,tel,codice_u)

Dettagli

Basi di dati 9 febbraio 2010 Compito A

Basi di dati 9 febbraio 2010 Compito A Basi di dati 9 febbraio 2010 Compito A Domanda 0 (5%) Leggere e rispettare le seguenti regole: Scrivere nome, cognome, matricola (se nota), corso di studio e lettera del compito (ad esempio, A) sui fogli

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

ESAME di INFORMATICA e ARCHIVIAZIONE

ESAME di INFORMATICA e ARCHIVIAZIONE UNIVERSITÀ DEGLI STUDI DI UDINE Facoltà di Medicina e Chirurgia CORSO DI LAUREA IN TECNICHE DI RADIOLOGIA MEDICA PER IMMAGINI E RADIOTERAPIA ESAME di INFORMATICA e ARCHIVIAZIONE 22 giugno 2011 1 Progettazione

Dettagli

UNIVERSITÀ DEGLI STUDI DI UDINE Facoltà di Medicina e Chirurgia CORSO DI LAUREA IN TECNICHE DI RADIOLOGIA MEDICA PER IMMAGINI E RADIOTERAPIA ESAME

UNIVERSITÀ DEGLI STUDI DI UDINE Facoltà di Medicina e Chirurgia CORSO DI LAUREA IN TECNICHE DI RADIOLOGIA MEDICA PER IMMAGINI E RADIOTERAPIA ESAME UNIVERSITÀ DEGLI STUDI DI UDINE Facoltà di Medicina e Chirurgia CORSO DI LAUREA IN TECNICHE DI RADIOLOGIA MEDICA PER IMMAGINI E RADIOTERAPIA ESAME 14 maggio 2009 1 Progettazione di basi di dati Si vuole

Dettagli

Gli attributi di STUDENTE saranno: Matricola (chiave primaria), Cognome, Nome.

Gli attributi di STUDENTE saranno: Matricola (chiave primaria), Cognome, Nome. Prof. Francesco Accarino Raccolta di esercizi modello ER Esercizio 1 Un università vuole raccogliere ed organizzare in un database le informazioni sui propri studenti in relazione ai corsi che essi frequentano

Dettagli

SQL e ACCESS. Modello relazionale PROBLEMA ENTITA STUDENTE

SQL e ACCESS. Modello relazionale PROBLEMA ENTITA STUDENTE SQL e ACCESS Prof. Salvatore Multazzu (salvatoremultazzu@tiscali.it) Applicazioni Informatiche nella comunicazione Modello relazionale Entità Record o Ennuple Attributi o Campi Tipi Chiavi Primarie (PK)

Dettagli

Unità C1 Modello logico

Unità C1 Modello logico Dare una breve descrizione dei termini introdotti: (A) CONOSCENZA TERMINOLOGICA Tupla Modello gerarchico Modello reticolare Modello relazionale Relazione di relazione di database Istanza Regole di derivazione

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

Passo 2: avviare Access e creare una tabella per ogni tipo di entità Costruire la tabella per l entità cliente.

Passo 2: avviare Access e creare una tabella per ogni tipo di entità Costruire la tabella per l entità cliente. Realizzare un database con Access Di Antonio Bernardo e Mario Bochicchio Esercizio Una catena di supermercati vuole tener traccia dei prodotti acquistati dai clienti. Di ogni cliente si vuole conoscere

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

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

Compito Sistemi Informativi LA. Tempo concesso : 90 minuti 25 Marzo 03 Nome: Cognome: Matricola: Esercizio 1

Compito Sistemi Informativi LA. Tempo concesso : 90 minuti 25 Marzo 03 Nome: Cognome: Matricola: Esercizio 1 Compito Sistemi Informativi LA. Tempo concesso : 90 minuti 25 Marzo 03 Nome: Cognome: Matricola: Esercizio 1 Si considerino le seguenti specifiche relative alla realizzazione della base di dati di un circolo

Dettagli

Università degli Studi di Verona. Laboratorio di Basi di Dati

Università degli Studi di Verona. Laboratorio di Basi di Dati Università degli Studi di Verona Laboratorio di Basi di Dati Introduzione ad OOo Base: Creazione Tabelle Gabriele Pozzani: gabriele.pozzani@univr.it Materiale prodotto da: Dott.ssa Barbara Oliboni Database:

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

Esercitazione di Basi di Dati

Esercitazione di Basi di Dati Esercitazione di Basi di Dati Corso di Fondamenti di Informatica 6 Maggio 2004 Come costruire una ontologia Marco Pennacchiotti pennacchiotti@info.uniroma2.it Tel. 0672597334 Ing.dell Informazione, stanza

Dettagli

1.Tutte 2.Spesso P.IVAe le CF volte che si visualizza i dati un fornitore si mostranoanche. La mensa. La mensa

1.Tutte 2.Spesso P.IVAe le CF volte che si visualizza i dati un fornitore si mostranoanche. La mensa. La mensa Ristrutturare Osservazioni seguenti che possano indicazioni emergere lo schema sulle ER operazioni della slide frequenti successiva e indicando tenendo presenti i vincoli le 1.Tutte 2.Spesso P.IVAe le

Dettagli

Segreteria da campo. Database Relazionali

Segreteria da campo. Database Relazionali Segreteria da campo Database Relazionali realizzato secondo gli Standard Regionali in materia di Formazione per la Protezione Civile come conforme alla d.g.r. n. X/1371 del 14.02.2014, livello A2-14 Corso

Dettagli

SQL: definizione schema

SQL: definizione schema Si Clienti(codice,nome,indirizzo,p_iva) scriva il SQL che definisce il seguente schema relazionale Prodotti(codice,nome,descrizione,prezzo) SQL: definizione schema Fatture(codice,cliente,data) RigheFattura(codice,fattura,prodotto,quantità,prezzo)

Dettagli

Basi Di Dati, 09/12/2003

Basi Di Dati, 09/12/2003 Basi Di Dati, 09/12/2003 Una concessionaria di auto nuove ed usate vuole automatizzare alcune delle sue attività. L attività che la concessionaria vuole automatizzare riguarda la gestione delle auto nuove,

Dettagli

I database. Cosa sono e a cosa servono i Database

I database. Cosa sono e a cosa servono i Database I database Estratto dal Modulo 1 - I database Prof. Piero GALLO 1 Cosa sono e a cosa servono i Database Un database(o base di dati) e' una raccolta organizzata di dati correlati. Il principale scopo di

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

Basi di dati I. Esercitazione proposta

Basi di dati I. Esercitazione proposta Basi di dati I Esercitazione proposta Premessa Viene richiesta la realizzazione di una piccola base di dati, attraverso un processo di progettazione concettuale e logica e con la realizzazione di alcune

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

Prova Scritta di Basi di Dati

Prova Scritta di Basi di Dati Prova Scritta di Basi di Dati 25 Luglio 2006 COGNOME: NOME: MATRICOLA: Si prega di risolvere gli esercizi direttamente sui fogli del testo, negli spazi indicati. Usare il foglio protocollo solo per la

Dettagli

Corso di Access. Prerequisiti. Modulo L2A (Access) 1.1 Concetti di base. Utilizzo elementare del computer Concetti fondamentali di basi di dati

Corso di Access. Prerequisiti. Modulo L2A (Access) 1.1 Concetti di base. Utilizzo elementare del computer Concetti fondamentali di basi di dati Corso di Access Modulo L2A (Access) 1.1 Concetti di base 1 Prerequisiti Utilizzo elementare del computer Concetti fondamentali di basi di dati 2 1 Introduzione Un ambiente DBMS è un applicazione che consente

Dettagli

Sistemi per la gestione di database: MySQL ( )

Sistemi per la gestione di database: MySQL ( ) Sistemi per la gestione di database: MySQL ( ) Relational Database e Relational Database Management System Un database è una raccolta di dati organizzata in modo da consentire l accesso, il reperimento

Dettagli

Esame di Stato Istituto Tecnico Industriale Soluzione della Seconda Prova Indirizzo: INFORMATICA Tema: INFORMATICA Anno Scolastico: 2002-2003

Esame di Stato Istituto Tecnico Industriale Soluzione della Seconda Prova Indirizzo: INFORMATICA Tema: INFORMATICA Anno Scolastico: 2002-2003 Esame di Stato Istituto Tecnico Industriale Soluzione della Seconda Prova Indirizzo: INFORMATICA Tema: INFORMATICA Anno Scolastico: 2002-2003 Il primo punto richiede l analisi e lo sviluppo del progetto

Dettagli

ING SW. Progetto di Ingegneria del Software. e-travel. Requisiti Utente. Specifiche Funzionali del Sistema

ING SW. Progetto di Ingegneria del Software. e-travel. Requisiti Utente. Specifiche Funzionali del Sistema Pagina: 1 e-travel ING SW Progetto di Ingegneria del Software e-travel Requisiti Utente Specifiche Funzionali del Sistema e Pagina: 2 di 9 Indice dei contenuti 1 INTRODUZIONE... 3 1.1 SCOPO DEL DOCUMENTO...

Dettagli

Esercizi di progettazione concettuale di una base di dati

Esercizi di progettazione concettuale di una base di dati Esercizi di progettazione concettuale di una base di dati È riportato di seguito un insieme di esercizi di progettazione concettuale di basi di dati. Ogni esercizio è caratterizzato da un insieme di specifiche

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

2003.06.16 Il sistema C.R.M. / E.R.M.

2003.06.16 Il sistema C.R.M. / E.R.M. 2003.06.16 Il sistema C.R.M. / E.R.M. Customer / Enterprise : Resource Management of Informations I-SKIPPER è un sistema di CONOSCENZE che raccoglie ed integra INFORMAZIONI COMMERCIALI, dati su Clienti,

Dettagli

Strutturazione logica dei dati: i file

Strutturazione logica dei dati: i file Strutturazione logica dei dati: i file Informazioni più complesse possono essere composte a partire da informazioni elementari Esempio di una banca: supponiamo di voler mantenere all'interno di un computer

Dettagli

Basi di Dati 1 Prof. L. Tanca e F. A. Schreiber APPELLO DEL 21 LUGLIO 2015 Tempo: 2h30m

Basi di Dati 1 Prof. L. Tanca e F. A. Schreiber APPELLO DEL 21 LUGLIO 2015 Tempo: 2h30m Basi di Dati 1 Prof. L. Tanca e F. A. Schreiber APPELLO DEL 21 LUGLIO 2015 Tempo: 2h30m Si consideri il seguente schema di base di dati, che vuole memorizzare informazioni relative a pubblicazioni su riviste

Dettagli

Lezioni di Laboratorio sui Data Base

Lezioni di Laboratorio sui Data Base Lezioni di Laboratorio sui Data Base Docente Tutor: Dott. Gianluigi Roveda Informatica per l'impresa Prima Parte: Open Office - Base PREMESSA Questo lavoro è stato realizzato a partire dalle slides del

Dettagli

Il database management system Access

Il database management system Access Il database management system Access Corso di autoistruzione http://www.manualipc.it/manuali/ corso/manuali.php? idcap=00&idman=17&size=12&sid= INTRODUZIONE Il concetto di base di dati, database o archivio

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

GESTIONE CONTRATTI. Contratti clienti e contratti fornitori

GESTIONE CONTRATTI. Contratti clienti e contratti fornitori SPRING - CONTRATTI La Gestione Contratti di SPRING, in un'azienda, risolve le esigenze relative alla rilevazione dei contratti e delle relative condizioni. In particolare è possibile definire i servizi

Dettagli

Sviluppata da: Lo Russo - Porcelli Pag. 1 di 6 6FRSR utilizzare il DBMS Postgresql per imparare il linguaggio SQL.

Sviluppata da: Lo Russo - Porcelli Pag. 1 di 6 6FRSR utilizzare il DBMS Postgresql per imparare il linguaggio SQL. Pag. 1 di 6 6FRSR utilizzare il DBMS Postgresql per imparare il linguaggio SQL. 2ELHWWLYL GD UDJJLXQJHUH SHU JOL VWXGHQWL alla fine dell esercitazione gli studenti dovranno essere in grado di: 1. utilizzare

Dettagli

NUOVO SISTEMA AGGIORNAMENTO DA FYO

NUOVO SISTEMA AGGIORNAMENTO DA FYO NUOVO SISTEMA AGGIORNAMENTO DA FYO 1 Introduzione La sezione FYO permette di allineare i dati delle vendite di Vodafone con quelli registrati dall Agenzia Vodafone. L allineamento è possibile caricando

Dettagli

(A) CONOSCENZA TERMINOLOGICA (B) CONOSCENZA E COMPETENZA (C) ESERCIZI DI COMPRENSIONE

(A) CONOSCENZA TERMINOLOGICA (B) CONOSCENZA E COMPETENZA (C) ESERCIZI DI COMPRENSIONE (A) CONOSCENZA TERMINOLOGICA Dare una breve descrizione dei termini introdotti: Caselle di testo Caselle di riepilogo Caselle combinate Gruppo di opzioni Pulsanti di comando (B) CONOSCENZA E COMPETENZA

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

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

Dati relazionali e XML

Dati relazionali e XML Dati relazionali e Introduzione (1) Memorizzazione dei dati Utilizzo dei dati Applicazione DBMS relazionale Applicazione Applicazione 2 Introduzione (2) Memorizzazione dei dati Utilizzo dei dati Applicazione

Dettagli

Affitto 500 500 500 Vitto 350 400 350 Vestiario 230 170 120 Telefono 60 Enel 90 Metano 240 Abbonamento tram 25 25 25 Rata mutuo 1.

Affitto 500 500 500 Vitto 350 400 350 Vestiario 230 170 120 Telefono 60 Enel 90 Metano 240 Abbonamento tram 25 25 25 Rata mutuo 1. Istituto di Istruzione Secondaria Superiore J. M. Keynes TECNOLOGIE INFORMATICHE COMPITI PER LE VACANZE CLASSE 1^ TG - CAT A.S. 2013-2014 Prof.ssa Brunetti Elena Lisa TEMA 7: FOGLIO ELETTRONICO (CALC)

Dettagli

Esercitazione Simulazione Compito

Esercitazione Simulazione Compito Esercitazione Simulazione Compito 05/12/2014 Compito del 26/05/2014 1.1 Il comando DELETE FROM UtenE WHERE alias = gino dove alias è una primary key: (a) elimina zero o una riga (b) elimina un numero imprecisato

Dettagli

Esame Di Stato A.S. 2004/2005 Istituto Tecnico Commerciale Corso Sperimentale Progetto Mercurio Corso di Ordinamento - Programmatori

Esame Di Stato A.S. 2004/2005 Istituto Tecnico Commerciale Corso Sperimentale Progetto Mercurio Corso di Ordinamento - Programmatori Esame Di Stato A.S. 2004/2005 Istituto Tecnico Commerciale Corso Sperimentale Progetto Mercurio Corso di Ordinamento - Programmatori Telelavoro ed e-commerce, due mini-rivoluzioni, stentano a svilupparsi

Dettagli

marca (1,n) (1,1) nome prezzou prodotto nome responsabile quantità nome datai dataf (0,n) vendite (0,n) (0,n) (0,n) tempo acquisti quantità (0,n)

marca (1,n) (1,1) nome prezzou prodotto nome responsabile quantità nome datai dataf (0,n) vendite (0,n) (0,n) (0,n) tempo acquisti quantità (0,n) marca (1,n) di descrizione (1,1) prodotto (1,1) in (1,n) categoria città (1,n) (1,n) nella indirizzo responsabile quantità (1,1) supermercato vendite ricavo promozione datai dataf %sconto costo acquisti

Dettagli

Compito Basi di Dati. Tempo concesso: 90 minuti 08 Giugno 2006 Nome: Cognome: Matricola:

Compito Basi di Dati. Tempo concesso: 90 minuti 08 Giugno 2006 Nome: Cognome: Matricola: Compito Basi di Dati. Tempo concesso: 90 minuti 08 Giugno 2006 Nome: Cognome: Matricola: Esercizio 1 Si considerino le seguenti specifiche relative alla realizzazione di un sistema di gestione di uno studio

Dettagli

CORSO ACCESS PARTE II. Esistono diversi tipi di aiuto forniti con Access, generalmente accessibili tramite la barra dei menu (?)

CORSO ACCESS PARTE II. Esistono diversi tipi di aiuto forniti con Access, generalmente accessibili tramite la barra dei menu (?) Ambiente Access La Guida di Access Esistono diversi tipi di aiuto forniti con Access, generalmente accessibili tramite la barra dei menu (?) Guida in linea Guida rapida Assistente di Office indicazioni

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

Progettazione e realizzazione di un applicativo Web Annunci Immobiliari

Progettazione e realizzazione di un applicativo Web Annunci Immobiliari Corso di Gestione dell Informazione Studenti NON frequentanti A.A. 2009/2010 Progettazione e realizzazione di un applicativo Web Annunci Immobiliari 1 Scopo del progetto Si vuole realizzare un applicazione

Dettagli

I database relazionali (Access)

I database relazionali (Access) I database relazionali (Access) Filippo TROTTA 04/02/2013 1 Prof.Filippo TROTTA Definizioni Database Sistema di gestione di database (DBMS, Database Management System) Sistema di gestione di database relazionale

Dettagli

Il BACKUP è disponibile in http://www.dbgroup.unimo.it/sia/esercizio_21_novembre_2013/esercizio_21_novembre_2013.bak

Il BACKUP è disponibile in http://www.dbgroup.unimo.it/sia/esercizio_21_novembre_2013/esercizio_21_novembre_2013.bak ESEMPIO DELLE VENDITE: MISURE ED AGGREGABILITA E l esempio discusso nelle dispense è Dispense : http://www.dbgroup.unimo.it/sia/sia_2014_progettazionediundw_misure.pdf esteso e dettagliato. Il BACKUP è

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

Fasi di creazione di un programma

Fasi di creazione di un programma Fasi di creazione di un programma 1. Studio Preliminare 2. Analisi del Sistema 6. Manutenzione e Test 3. Progettazione 5. Implementazione 4. Sviluppo 41 Sviluppo di programmi Per la costruzione di un programma

Dettagli

Basi di dati. (Sistemi Informativi) teoria e pratica con Microsoft Access. Basi di dati. Basi di dati. Basi di dati e DBMS DBMS DBMS

Basi di dati. (Sistemi Informativi) teoria e pratica con Microsoft Access. Basi di dati. Basi di dati. Basi di dati e DBMS DBMS DBMS Basi di Basi di (Sistemi Informativi) Sono una delle applicazioni informatiche che hanno avuto il maggiore utilizzo in uffici, aziende, servizi (e oggi anche sul web) Avete già interagito (magari inconsapevolmente)

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