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 password per il database
  2. BLa prima colonna di ogni tabella
  3. CUna colonna o un insieme di colonne che identifica in modo univoco ogni riga
  4. DUna colonna che può contenere valori duplicati ma non deve mai contenere NULL
2.Facile

Un cliente può effettuare molti ordini, ma ogni ordine appartiene a esattamente un cliente. Di che tipo di relazione si tratta?

  1. AZero-a-zero
  2. BMolti-a-molti
  3. CUno-a-molti
  4. DUno-a-uno
3.Facile

Che cosa fa GROUP BY in una query?

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

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

  1. ALa lettura di dati senza una clausola WHERE
  2. BLa lettura di dati da un disco danneggiato
  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
5.Media

Che cosa restituisce INTERSECT usato tra due query SELECT?

  1. AIl prodotto cartesiano dei risultati
  2. BTutte le righe di entrambi i risultati
  3. CLe righe presenti in entrambi i risultati
  4. DLe righe del primo risultato ma non del secondo
6.Media

Una tabella employees ha una colonna manager_id che fa riferimento a un altro dipendente. Come si elenca ogni dipendente accanto al nome del suo responsabile?

  1. AUsando soltanto GROUP BY manager_id
  2. BUnendo la tabella employees con se stessa usando due alias
  3. CCreando una seconda copia della tabella su disco
  4. DCombinare la tabella con se stessa usando UNION ALL e un filtro WHERE
7.Difficile

I punteggi sono 90, 90 e 80. Quali valori dà RANK() OVER (ORDER BY score DESC)?

  1. A1, 1, 3
  2. B2, 2, 3
  3. C1, 2, 3
  4. D1, 1, 2
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. ALascia entrambe le transazioni in attesa finché una delle due non esegue il commit normalmente
  2. BFonde le due transazioni in una sola
  3. CRileva il deadlock e interrompe una transazione scelta come vittima
  4. DConferma entrambe le transazioni contemporaneamente

Soluzioni

  1. 1. C · Una colonna o un insieme di colonne che identifica in modo univoco ogni riga
  2. 2. C · Uno-a-molti
  3. 3. B · Raggruppa le righe con gli stessi valori, così che gli aggregati vengano calcolati per gruppo
  4. 4. D · La lettura di dati scritti da un'altra transazione non ancora confermata
  5. 5. C · Le righe presenti in entrambi i risultati
  6. 6. B · Unendo la tabella employees con se stessa usando due alias
  7. 7. A · 1, 1, 3
  8. 8. C · Rileva il deadlock e interrompe una transazione scelta come vittima

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