Scheda di esercizi di Basi di dati e SQL con soluzioni

Scheda di esercizi di Basi di dati e SQL gratuita e stampabile: 8 esercizi dal livello facile a quello d’esame, con le soluzioni. Stampala o salvala come PDF.

Per i docenti: gratuita da stampare, copiare e usare in classe. Ogni nuova scheda ha nuovi valori e le sue soluzioni. Un link a ExamProblems nella pagina del corso è molto apprezzato.

Nome: ____________________   Data: ____________

1.Facile

In PostgreSQL e MySQL, quale clausola restituisce solo le prime 10 righe di un risultato?

  1. ATOP ROWS 10
  2. BFIRST 10 ONLY
  3. CLIMIT 10
  4. DMAX 10
2.Facile

Che cosa fa WHERE country IN ('NL', 'BE', 'DE')?

  1. AMantiene le righe in cui country è uguale a uno qualsiasi dei valori dell'elenco
  2. BMantiene le righe in cui country contiene contemporaneamente tutti e tre i codici
  3. COrdina le righe nell'ordine dell'elenco
  4. DMantiene le righe in cui country non è nell'elenco
3.Facile

Una chiave esterna (foreign key) è:

  1. AUna colonna che fa riferimento alla chiave primaria di un'altra tabella
  2. BUna chiave usata da utenti stranieri
  3. CUna colonna i cui valori devono essere univoci in tutte le righe della tabella
  4. DUna chiave sempre cifrata
4.Media

Che cosa restituisce SELECT name, CASE WHEN grade >= 5,5 THEN 'pass' ELSE 'fail' END FROM results?

  1. AUn errore, perché CASE non è ammesso nella SELECT
  2. BSolo gli studenti promossi
  3. CIl numero di studenti promossi e bocciati
  4. DOgni nome con l'etichetta 'pass' o 'fail' a seconda del voto
5.Media

Perché si creano indici sulle colonne?

  1. APer impedire i valori NULL
  2. BPer rendere più veloci inserimenti e aggiornamenti su quelle colonne
  3. CPer velocizzare ricerche e join su quelle colonne
  4. DPer risparmiare spazio su disco
6.Media

Che cos'è una lettura sporca (dirty read)?

  1. ALa lettura di dati da un disco danneggiato
  2. BLa lettura di dati senza una clausola WHERE
  3. CLa lettura della stessa riga due volte ottenendo lo stesso valore
  4. DLa lettura di dati scritti da un'altra transazione non ancora confermata
7.Difficile

Un database di reportistica copia i nomi dei clienti nella tabella orders per evitare i join. Qual è il costo principale di questa denormalizzazione?

  1. ALe query sulla tabella orders diventano più lente
  2. BNon si possono più usare chiavi primarie
  3. CIl database non può più usare indici
  4. DLe copie ridondanti vanno mantenute coerenti ogni volta che i dati del cliente cambiano
8.Difficile

Che cos'è una lettura fantasma (phantom read)?

  1. AUna query ripetuta restituisce nuove righe inserite da un'altra transazione confermata
  2. BLa lettura di dati mai scritti
  3. CLa lettura di modifiche non confermate
  4. DUna query che non restituisce righe

Soluzioni

  1. 1. C · LIMIT 10
  2. 2. A · Mantiene le righe in cui country è uguale a uno qualsiasi dei valori dell'elenco
  3. 3. A · Una colonna che fa riferimento alla chiave primaria di un'altra tabella
  4. 4. D · Ogni nome con l'etichetta 'pass' o 'fail' a seconda del voto
  5. 5. C · Per velocizzare ricerche e join su quelle colonne
  6. 6. D · La lettura di dati scritti da un'altra transazione non ancora confermata
  7. 7. D · Le copie ridondanti vanno mantenute coerenti ogni volta che i dati del cliente cambiano
  8. 8. A · Una query ripetuta restituisce nuove righe inserite da un'altra transazione confermata

Soluzioni complete passo passo: esercitati su questo argomento su examproblems.com.