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 primaria (primary key)?

  1. AUna colonna che può contenere valori duplicati ma non deve mai contenere NULL
  2. BLa prima colonna di ogni tabella
  3. CUna password per il database
  4. DUna colonna o un insieme di colonne che identifica in modo univoco ogni riga
2.Facile

Che cosa fa GROUP BY in una query?

  1. ARaggruppa le righe con gli stessi valori, così che gli aggregati vengano calcolati per gruppo
  2. BOrdina alfabeticamente le righe del risultato
  3. CUnisce due tabelle sulle colonne comuni
  4. DRimuove le righe con valori NULL
3.Facile

Come si ordina un risultato dallo stipendio più alto a quello più basso?

  1. AGROUP BY salary DESC
  2. BORDER BY salary ASC
  3. CSORT salary DOWN
  4. DORDER BY salary DESC
4.Media

Che cosa restituisce EXCEPT (chiamato MINUS in Oracle)?

  1. ALe righe della seconda query che non compaiono nella prima
  2. BTutte le righe di entrambe le query senza duplicati
  3. CLe righe che compaiono in entrambe le query
  4. DLe righe della prima query che non compaiono nella seconda
5.Media

Che cosa restituisce SELECT COALESCE(phone, 'unknown') FROM customers per un cliente il cui phone è NULL?

  1. AUna stringa vuota
  2. BNULL
  3. CUn errore
  4. D'unknown'
6.Media

Quale query restituisce lo stipendio più alto di ogni reparto?

  1. ASELECT MAX(dept), salary FROM emp GROUP BY salary
  2. BSELECT dept, salary FROM emp WHERE salary = MAX(salary)
  3. CSELECT dept, MAX(salary) FROM emp GROUP BY dept
  4. DSELECT dept, MAX(salary) FROM emp ORDER BY dept
7.Difficile

Quale livello di isolamento impedisce le letture sporche (dirty read) ma consente ancora le letture non ripetibili?

  1. ARead uncommitted
  2. BRead committed
  3. CRepeatable read
  4. DSerializable
8.Difficile

Un'applicazione esegue UPDATE item SET qty = 4, version = 8 WHERE id = 1 AND version = 7 e segnala un conflitto se nessuna riga è stata aggiornata. Di quale tecnica si tratta?

  1. AControllo ottimistico della concorrenza
  2. BWrite-ahead logging
  3. CSharding del database
  4. DLocking rigoroso a due fasi con lock a livello di riga

Soluzioni

  1. 1. D · Una colonna o un insieme di colonne che identifica in modo univoco ogni riga
  2. 2. A · Raggruppa le righe con gli stessi valori, così che gli aggregati vengano calcolati per gruppo
  3. 3. D · ORDER BY salary DESC
  4. 4. D · Le righe della prima query che non compaiono nella seconda
  5. 5. D · 'unknown'
  6. 6. C · SELECT dept, MAX(salary) FROM emp GROUP BY dept
  7. 7. B · Read committed
  8. 8. A · Controllo ottimistico della concorrenza

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