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

Che cos'è una chiave candidata?

  1. AUna colonna in attesa di diventare una chiave esterna
  2. BUn insieme di colonne condiviso tra due tabelle per collegarne le righe
  3. CQualsiasi colonna che contiene valori NULL
  4. DUn insieme minimo di colonne che identifica in modo univoco ogni riga
2.Facile

Quale clausola filtra le righe prima del raggruppamento?

  1. AWHERE
  2. BGROUP BY
  3. CHAVING
  4. DORDER BY
3.Facile

Quali righe seleziona WHERE price BETWEEN 10 AND 20?

  1. ALe righe con prezzo fuori dall'intervallo da 10 a 20
  2. BSolo le righe con prezzo uguale a 10 o a 20
  3. CLe righe con prezzo da 10 a 20, compresi 10 e 20
  4. DLe righe con prezzo maggiore di 10 e minore di 20, escludendo 10 e 20
4.Media

Che cos'è un trigger di database?

  1. AUn backup programmato del database
  2. BUna query che un utente esegue a mano
  3. CCodice eseguito automaticamente quando su una tabella si verifica un evento specificato, come INSERT, UPDATE o DELETE
  4. DUn tipo di indice che velocizza le ricerche
5.Media

Che cosa fa ROLLBACK TO SAVEPOINT s1?

  1. AAnnulla l'intera transazione dall'inizio
  2. BElimina il savepoint e tutte le tabelle modificate da allora
  3. CConclude la transazione e conferma tutto
  4. DAnnulla le modifiche fatte dopo il savepoint s1, mantenendo aperta la transazione
6.Media

Quale query restituisce il numero di ordini per cliente?

  1. ASELECT customer_id, COUNT(*) FROM orders GROUP BY customer_id
  2. BSELECT customer_id, COUNT(*) FROM orders ORDER BY customer_id
  3. CSELECT DISTINCT COUNT(*) FROM orders
  4. DSELECT customer_id FROM orders WHERE COUNT(*) > 0
7.Difficile

Quando la decomposizione di R in R1 e R2 è garantita senza perdita?

  1. AQuando R1 e R2 hanno lo stesso numero di colonne
  2. BQuando ogni attributo di R compare sia in R1 sia in R2
  3. CQuando gli attributi comuni di R1 e R2 formano una superchiave di R1 o di R2
  4. DQuando R1 e R2 non hanno attributi in comune
8.Difficile

La transazione T1 blocca la riga A e attende la riga B, mentre T2 blocca la riga B e attende la riga A. Che cosa fa un tipico DBMS?

  1. ARileva il deadlock e interrompe una transazione scelta come vittima
  2. BLascia entrambe le transazioni in attesa finché una delle due non esegue il commit normalmente
  3. CFonde le due transazioni in una sola
  4. DConferma entrambe le transazioni contemporaneamente

Soluzioni

  1. 1. D · Un insieme minimo di colonne che identifica in modo univoco ogni riga
  2. 2. A · WHERE
  3. 3. C · Le righe con prezzo da 10 a 20, compresi 10 e 20
  4. 4. C · Codice eseguito automaticamente quando su una tabella si verifica un evento specificato, come INSERT, UPDATE o DELETE
  5. 5. D · Annulla le modifiche fatte dopo il savepoint s1, mantenendo aperta la transazione
  6. 6. A · SELECT customer_id, COUNT(*) FROM orders GROUP BY customer_id
  7. 7. C · Quando gli attributi comuni di R1 e R2 formano una superchiave di R1 o di R2
  8. 8. A · Rileva il deadlock e interrompe una transazione scelta come vittima

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