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 cosa rappresenta NULL in SQL?
AUn valore mancante o sconosciuto
BUna stringa vuota
CIl numero zero nelle colonne numeriche
DUn booleano falso
2.Facile
Quale istruzione SQL aggiunge nuove righe a una tabella?
ASELECT
BALTER
CUPDATE
DINSERT
3.Facile
Che cosa restituisce un CROSS JOIN?
AOgni combinazione di righe delle due tabelle
BSolo le righe che non corrispondono
CSolo le righe della prima tabella
DSolo le righe che corrispondono su una colonna chiave condivisa
4.Media
Che cosa significa la dipendenza funzionale A → B?
AA ogni valore di A è associato esattamente un valore di B
BA è una chiave esterna che fa riferimento a B
CA e B sono entrambe chiavi primarie
DA ogni valore di B è associato esattamente un valore di A
5.Media
Che cos'è una lettura sporca (dirty read)?
ALa lettura di dati senza una clausola WHERE
BLa lettura della stessa riga due volte ottenendo lo stesso valore
CLa lettura di dati scritti da un'altra transazione non ancora confermata
DLa lettura di dati da un disco danneggiato
6.Media
Una vista (view) in SQL è:
AUn tipo di indice
BUna copia di una tabella su disco
CUna query memorizzata che si comporta come una tabella virtuale
DUna schermata del client del database per sfogliare le tabelle
7.Difficile
Qual è il risultato di SELECT COUNT(col) FROM t se tutti i valori di col sono NULL e la tabella ha 10 righe?
ANULL
B10
C0
DUn errore
8.Difficile
Perché SELECT dept, name, COUNT(*) FROM emp GROUP BY dept non è valida nello standard SQL?
Adept deve comparire dentro una funzione di aggregazione
Bname non è né raggruppato né aggregato, quindi non ha un unico valore per gruppo
CCOUNT(*) non si può usare insieme a GROUP BY
DGROUP BY deve elencare tutte le colonne della tabella
Soluzioni
1. A · Un valore mancante o sconosciuto
2. D · INSERT
3. A · Ogni combinazione di righe delle due tabelle
4. A · A ogni valore di A è associato esattamente un valore di B
5. C · La lettura di dati scritti da un'altra transazione non ancora confermata
6. C · Una query memorizzata che si comporta come una tabella virtuale
7. C · 0
8. B · name non è né raggruppato né aggregato, quindi non ha un unico valore per gruppo
Soluzioni complete passo passo: esercitati su questo argomento su examproblems.com.