Werkblad Databases & SQL met antwoorden

Gratis printbaar werkblad Databases & SQL: 8 opgaven van makkelijk tot tentamenniveau, met antwoordenblad. Print het of sla het op als pdf.

Nieuw werkbladOnline oefenen met hints

Voor docenten: gratis te printen, kopiëren en in de les te gebruiken. Elk nieuw werkblad heeft nieuwe waarden en een eigen antwoordblad. Een link naar ExamProblems op je cursuspagina wordt gewaardeerd.

Naam: ____________________   Datum: ____________

1.Makkelijk

Wat doet UNION met de resultaten van twee SELECT-query's?

  1. AVoegt ze samen tot één resultaat en verwijdert dubbele rijen
  2. BHoudt alleen rijen over die in beide voorkomen
  3. CKoppelt ze naast elkaar op een sleutel
  4. DHoudt alleen rijen over die in de eerste query voorkomen maar niet in de tweede
2.Makkelijk

Wat is een surrogaatsleutel (surrogate key)?

  1. AEen sleutel die naar een andere tabel verwijst
  2. BEen sleutel die is gemaakt van echte gegevens, zoals een e-mailadres
  3. CEen sleutel die alleen in views wordt gebruikt
  4. DEen kunstmatige identificatie zonder zakelijke betekenis, zoals een auto-increment-id
3.Makkelijk

Een INNER JOIN geeft:

  1. AAlleen rijen met overeenkomende waarden in beide tabellen
  2. BAlle rijen uit beide tabellen
  3. CRijen die niet overeenkomen
  4. DAlle rijen uit de linkertabel, met NULL waar er geen overeenkomst is
4.Gemiddeld

De tabel orders heeft 5 rijen, die elk naar een bestaande klant verwijzen. De tabel customers heeft 3 rijen. Hoeveel rijen geeft een INNER JOIN op customer_id terug?

  1. A5
  2. B8
  3. C3
  4. D15
5.Gemiddeld

Wat geeft EXCEPT (in Oracle MINUS genoemd) terug?

  1. ARijen die in beide query's voorkomen
  2. BRijen van de tweede query die niet in de eerste voorkomen
  3. CAlle rijen uit beide query's zonder duplicaten
  4. DRijen van de eerste query die niet in de tweede voorkomen
6.Gemiddeld

Welke query toont klanten die nooit een bestelling hebben geplaatst?

  1. ASELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id = NULL
  2. BSELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NOT NULL
  3. CSELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
  4. DSELECT c.name FROM customers c INNER JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
7.Moeilijk

Een app voert UPDATE item SET qty = 4, version = 8 WHERE id = 1 AND version = 7 uit en meldt een conflict als er geen rij is bijgewerkt. Welke techniek is dit?

  1. AOptimistische concurrency control
  2. BWrite-ahead logging
  3. CStrikte two-phase locking met rijvergrendelingen
  4. DDatabase-sharding
8.Moeilijk

Wat is een covering index voor een query?

  1. AEen index die elke nacht opnieuw wordt opgebouwd
  2. BEen index die alle kolommen bevat die de query nodig heeft, zodat de tabel zelf niet hoeft te worden gelezen
  3. CEen index op alleen de primaire sleutel
  4. DEen index die elke kolom van elke tabel dekt

Antwoordenblad

  1. 1. A · Voegt ze samen tot één resultaat en verwijdert dubbele rijen
  2. 2. D · Een kunstmatige identificatie zonder zakelijke betekenis, zoals een auto-increment-id
  3. 3. A · Alleen rijen met overeenkomende waarden in beide tabellen
  4. 4. A · 5
  5. 5. D · Rijen van de eerste query die niet in de tweede voorkomen
  6. 6. C · SELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
  7. 7. A · Optimistische concurrency control
  8. 8. B · Een index die alle kolommen bevat die de query nodig heeft, zodat de tabel zelf niet hoeft te worden gelezen

Volledige stapsgewijze oplossingen: oefen dit onderwerp op examproblems.com.