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

Quale istruzione SQL modifica i valori di righe già esistenti?

  1. AMODIFY
  2. BUPDATE
  3. CREPLACE COLUMN
  4. DINSERT
2.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
3.Facile

Che cosa fa COMMIT in una transazione?

  1. ARende permanenti tutte le modifiche della transazione
  2. BCrea una nuova tabella
  3. CBlocca l'intero database
  4. DAnnulla tutte le modifiche fatte dall'inizio della transazione
4.Media

La tabella orders ha 5 righe, ciascuna riferita a un cliente esistente. La tabella customers ha 3 righe. Quante righe restituisce un INNER JOIN su customer_id?

  1. A5
  2. B3
  3. C15
  4. D8
5.Media

Che cosa restituisce SELECT SUM(amount) FROM orders quando la clausola WHERE non corrisponde ad alcuna riga?

  1. ANULL
  2. BUna stringa vuota
  3. C0
  4. DUn errore
6.Media

Quale istruzione rimuove tutte le righe di una tabella, ne mantiene la struttura e non ammette una clausola WHERE?

  1. ADROP TABLE
  2. BTRUNCATE TABLE
  3. CDELETE FROM con una clausola WHERE
  4. DALTER TABLE
7.Difficile

Una tabella ha un milione di righe e una colonna booleana is_active che è TRUE per il 95% di esse. Perché l'ottimizzatore potrebbe ignorare un indice su is_active per WHERE is_active = TRUE?

  1. ANon si possono creare indici su colonne booleane
  2. BL'ottimizzatore non usa mai gli indici nelle clausole WHERE
  3. CL'indice tratta TRUE come NULL
  4. DLa maggior parte delle righe corrisponde, quindi una scansione completa della tabella costa meno di molte ricerche nell'indice
8.Difficile

Esiste un indice composto su (last_name, first_name). Quale condizione può usarlo nel modo più efficace?

  1. AWHERE last_name = 'Jansen'
  2. BWHERE first_name LIKE '%a'
  3. CWHERE first_name = 'Eva'
  4. DWHERE UPPER(first_name) = 'EVA'

Soluzioni

  1. 1. B · UPDATE
  2. 2. A · Una colonna che fa riferimento alla chiave primaria di un'altra tabella
  3. 3. A · Rende permanenti tutte le modifiche della transazione
  4. 4. A · 5
  5. 5. A · NULL
  6. 6. B · TRUNCATE TABLE
  7. 7. D · La maggior parte delle righe corrisponde, quindi una scansione completa della tabella costa meno di molte ricerche nell'indice
  8. 8. A · WHERE last_name = 'Jansen'

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