Basi di dati: appello 07/02/06

Documenti analoghi
Basi di dati: appello 14/07/06

Esprimere in algebra (ottimizzata), calcolo relazionale la seguente query:

Basi di dati: appello 04/07/06

Basi di dati: appello 28/02/06

Basi di dati: appello 08/03/06

Basi di dati: appello 21/09/12

Esprimere in algebra (ottimizzata), calcolo relazionale la seguente query:

Basi di dati 8 settembre 2015 Esame Compito A Tempo a disposizione: due ore. Libri chiusi.

ESAME di INFORMATICA e ARCHIVIAZIONE

Basi di Dati. Esercitazione Algebra Relazionale e SQL. Ing. Paolo Cappellari. 15 maggio 2006

Basi di Dati Corso di Laura in Informatica Umanistica

Interrogazioni nidificate

Interrogazioni nidificate

Basi di dati I Prova di autovalutazione 30 ottobre 2014

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

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 21 LUGLIO 2015 Tempo: 2h30m

Il sistema informativo deve essere di tipo centralizzato e accessibile mediante un computer server installato nella rete locale dell albergo.

Concettuale. Giuseppe Amato

Verifica di Informatica. Cognome e Nome: Classe 5ª Ci, Data

ed SQL 10 Novembre 2009

Esame di Basi di Dati, SOLUZIONE APPELLO 09/06/2009

Basi di Dati. Esercitazione Algebra Relazionale. 16 maggio 2008

Fondamenti di Informatica 2 Simulazione d esame dell 11 Dicembre 2009

ESERCIZI SQL. Esercizio 1

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, SQL

Prova del 14/09/09. Considerare la seguente descrizione di un campeggio:

OBIETTIVI DELL'ESERCITAZIONE

Basi di Dati Corso di Laura in Informatica Umanistica

Basi di dati I 8 luglio 2016 Esame Compito A Tempo a disposizione: un ora e trenta minuti.

Fondamenti di Informatica 2

Universita di Milano Bicocca Corso di Basi di dati 1 in elearning C. Batini 6. SQL DDL 6.2 Data Description Language - 2

Laboratorio di Basi di Dati Esercizio 8.4/9.1

Interrogazioni in SQL

Soluzione esercitazione 01

SQL: DDL, VI, Aggiornamenti e Viste

B a s i d i D a t i ( M o d u l o T e o r i a ) P r o v a s c r i t t a

SQL: definizione schema

PROGETTAZIONE DI DATABASE Linguaggio SQL

2011 Politecnico di Torino 1

Esempio di database relazionale con l utilizzo del prodotto MySQL

Manuale SQL. Manuale SQL - 1 -

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

Esercizio 5.1. Soluzione:

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

Business Intelligence

MAX, SUM, AVG, COUNT)

SQL - Structured Query Language

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

Dichiarazione degli schemi in SQL DDL 1

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

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:

Basi di Dati. Esercitazione SQL. Paolo Papotti. 19 maggio 2005

Basi di dati I 19 settembre 2016 Tempo a disposizione: un ora e 45 minuti.

Basi di Dati. Esercitazione 1: Interrogazioni in SQL. K. Donno - Interrogazioni in SQL

Structured Query Language

SQL PER LA DEFINIZIONE DI BASI DI DATI

ESERCITAZIONI ACCESS

SQL: concetti base SQL. Definizione dei dati in SQL. SQL: "storia"

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, SQL

SQL non è solo un linguaggio di interrogazione (Query Language), ma. Un linguaggio per la definizione di basi di dati (Data-definition language (DDL))

Basi di Dati: Elementi

a) Si progetti uno schema concettuale Entità-Relazioni per lo scenario più sotto descritto.

σ data 15/12/2013 data 20/12/2014

SQL quick reference. piccolo manuale di riferimento dei principali comandi SQL (prof. Claudio Maccherani, Perugia, 2013)

Basi di dati Appello del Soluzione del compito B

LO SVOLGIMENTO DEL TEMA DI INFORMATICA

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

Lezione 4. Dallo schema ER al relazionale

Structured. Language. Basi di Dati. Introduzione. DDL: Data Definition Language. Tipi di dato. Query. Modifica dei Dati

SQL Laboratorio di Basi di Dati a.a. 2002/2003

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

RISOLUZIONE APPELLI DI SISTEMI INFORMATIVI

4/16/07. Le Basi di Dati Relazionali. Concetti Fondamentali. Base di dati, tabella, ennupla, attributo, dominio. Valori nulli

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

3. Selezionare i nomi dei clienti che iniziano con le lettere P, Q, R, S

Interrogare una base di dati: algebra relazionale e SQL. Savino Castagnozzi Giorgio Macauda Michele Meomartino Salvatore Picerno Massimiliano Sartor

BASE DI DATI. Esercizio: Campionato corse Progettazione concettuale Progettazione logica. Informatica Umanistica Università di Pisa

Storia. Corso di Basi di Dati Spaziali. Componente DDL. Funzionalità. Esempio. Creazione di schema. Linguaggi: SQL. Storia:

Capitolo 4. Soluzione: Soluzione: Create domain STRING as character varying (256) default sconosciuto not null

Esame di Basi di Dati SOLUZIONE APPELLO 14/06/2011

Documentazione SQL. Argomento Sintassi Note Definizione schema create schema [NomeSchema] [[authorization] Autorizzazione] {DefElementoSchema}

Corso di Laboratorio di Basi di Dati

Caratteristiche dei linguaggi per Database

SQL (STRUCTURED QUERY LANGUAGE)

Transcript:

Basi di dati: appello 07/02/06 Si consideri il seguente schema di base di dati di una casa editrice: restauro (id_quadro, data, tipo intervento, c.f._restauratore, ora_inizio, ora _fine.) quadro (id, titolo, autore, anno, tecnica, dimensioni, cod_pinacoteca) pinacoteca (Codice, nome, città) restauratore (c.f., nome, cognome, data_nascita, città_domicilio, n _telefono, ora_inizioturno, ora_fineturno) Linguaggi Formali Trovare i nomi e cognomi dei restauratori che hanno eseguito interventi nel 2002 su quadri di Monet, ma non hanno mai restaurato opere di Pissarro. Π nome, cognome (Π c.f. (restauratore c.f=c.f._restauratore (σ data<31/12/2002 data>01/01/2002 restauro id_quadro=id σ autore= Monet quadro)) Π c.f. (restauratore c.f=c.f._restauratore (restauro id_quadro=id σ autore= Pissarro quadro)))

Linguaggi Formali {t t1 restauratore, t2 restauro, t3 quadro (t[nome]=t1[nome] t[cognome]=t1[cognome] t1[c.f,]=t2[c.f._restauratore] t2[id_quadro]= t3[id] t2[data]>01/01/2002 t2[data]<31/12/2002 t3[autore]= Monet ( t4 restauro, t5 quadro (t4[c.f._restauratore] = t1[c.f.] t4[id_quadro] = t5[id] t5[autore] = Pissarro ))) }

SQL: interrogazioni Trovare i nomi delle pinacoteche che contengono quadri che non hanno subito più di 10 interventi di restauro e che siano stati restaurati almeno una volta da Bianchi SELECT DISTINCT (nome) FROM PINACOTECA, QUADRO WHERE PINACOTECA.nome=QUADRO.cod_pinacoteca AND QUADRO.Id IN (SELECT Id_quadro FROM RESTAURO JOIN RESTAURATORE ON RESTAURO.cf_restauratore= RESTAURATORE.cf WHERE cognome= Bianchi ) AND QUADRO.Id IN (SELECT Id_quadro FROM RESTAURO GROUP BY Id_quadro HAVING COUNT(*)<=10)

SQL: interrogazioni Trovare quale (o quali) restauratore è stato impegnato in interventi di restauro per il maggior numero di ore nel 2005. CREATE VIEW OreRestauri2005(CFRestauratore, TotaleOre) AS SELECT cf_restauratore, SUM (ora_fine-ora_inizio) FROM restauro WHERE data>01/01/2005 AND data<31/12/2005 GROUP BY cf_restauratore SELECT CFCorrettore, Nome, Cognome FROM OreRestauri2005 JOIN RESTAURATORE ON NumPagine.CFRestauratore=RESTAURATORE.cf WHERE TotaleOre>= SELECT MAX(TotaleOre) FROM OreRestauri2005

SQL DDL create table RESTAURO ( id_quadro char(6) references QUADRO(id id) on delete cascade on update cascade, data Date, tipo_intervento varchar(20), c.f._restauratore char(16) references Restauratore(c.f c.f.).) on delete no action, on update cascade, ora_inizio time, ora_fine time, primary key (id_quadro,data) );

SQL DDL create table RESTAURATORE ( c.f. char(16) primary key, Nome varchar(20) not null, Cognome varchar(20) not null, data_nascita date, città_domicilio varchar(20), n _telefono varchar(15), ora_inizioturno time, ora_fineturno time )

SQL: espressione di vincoli CREATE ASSERTION CONTROLLO_ORE check (NOT EXIST (SELECT * FROM RESTAURO JOIN RESTAURATORE ON RESTAURO.cf_restauratore=RESTAU RATORE.cf WHERE orainizio<orainizioturno orainizioturno OR orafine>orafineturno orafineturno))

Catalogo Cod. Catalogo Anno Orologio Contiene Codice Nome Personale Redazione (0,N) CF Nome Cognome Recapito Orologio meccanico Orologio al Quarzo (t,e) Cliente Codice Ragione sociale Indirizzo Telefono Aziende Privati (t,e) Città IVA Ordine effettua (1,1) Cod_ordine Composizione ordine Quantità (0,N) Data ordine Data evasione Numero fattura prezzo Tipo vetro Materiale cassa Precisione Durata media batteria Modello movimento Tipo batteria Automatico Durata media carica Numero rubini CF Nazione Mail Nome Cognome fax Acquisto effettua DatiAcquisto (1,1) (0,N) Quantità Profondità massima NumeroScontrino Data MezzoPagamento

Progetto logico Catalogo(CodCatalogo, anno) Personale (CF, Nome, Cognome, Recapito) RedazioneCatalogo (CodCatalogo, CF) Orologio (Codice, Nome, MaterialeCassa, Precisione, TipoVetro, ProfonditaMassima, ModelloMovimento*, TipoBatteria*, DurataBatteria*, Automatico*, DurataCarica*, NumRubini*) CatalogoContiene (CodCatalogo, CodiceOrologio, prezzo) Cliente (Codice, Nome*, Cognome*, RagioneSociale*, Indirizzo, Telefono, Città, Nazione, Mail, CF*, Fax*, IVA*) Ordine (CodOrdine, DataOrdine, DataEvasione, NumFattura, CodiceCliente) ComposizioneOrdine(CodOrologio, CodOrdine, quantità) Acquisto (NumScontrino, Data, MezzoPagamento, CodiceCliente) DatiAcquisto(NumScontrino, Data, CodOrologio, quantità)

Vincoli di integrità referenziale RedazioneCatalogo.CodCatalogo Catalogo.CodCatalogo RedazioneCatalogo.CF Catalogo.CF CatalogoContiene.CodCatalogo Catalogo.CodCatalogo CatalogoContiene.CodiceOrologio Orologio.Codice Ordine.CodiceCliente Cliente.Codice ComposizioneOrdine.CodOrologio Orologio.Codice ComposizioneOrdine.CodOrdine Ordine.CodOrdine Acquisto.CodiceCliente Cliente.Codice DatiAcquisto.CodOrologio Orologio.Codice (DatiAcquisto.Numscontrino, DatiAcquisto.Data) (Acquisto.Numscontrino, Acquisto.Data)