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 ROLLBACK in een transactie?

  1. AVerwijdert de tabel
  2. BSlaat alle wijzigingen van de transactie definitief op schijf op
  3. CHerhaalt de laatste instructie
  4. DMaakt de wijzigingen sinds het begin van de transactie ongedaan
2.Makkelijk

Welke rijen selecteert WHERE price BETWEEN 10 AND 20?

  1. ARijen met een prijs boven 10 en onder 20, zonder 10 en 20
  2. BRijen met een prijs van 10 tot en met 20, inclusief 10 en 20
  3. CAlleen rijen met een prijs gelijk aan 10 of 20
  4. DRijen met een prijs buiten het bereik 10 tot 20
3.Makkelijk

Wat doet WHERE country IN ('NL', 'BE', 'DE')?

  1. ASorteert rijen in de volgorde van de lijst
  2. BHoudt rijen over waarvan country gelijk is aan een van de waarden in de lijst
  3. CHoudt rijen over waarvan country niet in de lijst staat
  4. DHoudt rijen over waarvan country alle drie de codes tegelijk bevat
4.Gemiddeld

Een vreemde sleutel is gedeclareerd met ON DELETE CASCADE. Wat gebeurt er als een ouderrij wordt verwijderd?

  1. ADe ouderrij wordt naar een archieftabel gekopieerd
  2. BHet verwijderen wordt altijd geweigerd
  3. CDe vreemde sleutel in de kindrijen wordt automatisch op NULL gezet
  4. DDe kindrijen die ernaar verwijzen worden automatisch verwijderd
5.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 INNER JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
  4. DSELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
6.Gemiddeld

Wat geeft SELECT SUM(amount) FROM orders terug als de WHERE-clausule op geen enkele rij past?

  1. A0
  2. BEen lege string
  3. CEen fout
  4. DNULL
7.Moeilijk

Een rapportagedatabase kopieert klantnamen naar de tabel orders om joins te vermijden. Wat is de belangrijkste prijs van deze denormalisatie?

  1. ARedundante kopieën moeten consistent worden gehouden telkens als klantgegevens veranderen
  2. BDe database kan geen indexen meer gebruiken
  3. CQuery's op de tabel orders worden trager
  4. DPrimaire sleutels kunnen niet meer worden gebruikt
8.Moeilijk

Waarom gebruikt een query met WHERE YEAR(order_date) = 2025 mogelijk geen index op order_date?

  1. AYEAR is geen geldige SQL
  2. BIndexen werken nooit met datums
  3. CEen functie op de kolom toepassen verhindert een eenvoudige bereikzoekactie in de index
  4. DEen index op order_date wordt alleen gebruikt voor ORDER BY, nooit voor WHERE

Antwoordenblad

  1. 1. D · Maakt de wijzigingen sinds het begin van de transactie ongedaan
  2. 2. B · Rijen met een prijs van 10 tot en met 20, inclusief 10 en 20
  3. 3. B · Houdt rijen over waarvan country gelijk is aan een van de waarden in de lijst
  4. 4. D · De kindrijen die ernaar verwijzen worden automatisch verwijderd
  5. 5. D · SELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
  6. 6. D · NULL
  7. 7. A · Redundante kopieën moeten consistent worden gehouden telkens als klantgegevens veranderen
  8. 8. C · Een functie op de kolom toepassen verhindert een eenvoudige bereikzoekactie in de index

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