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 WHERE country IN ('NL', 'BE', 'DE')?

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

Wat is een primaire sleutel (primary key)?

  1. ADe eerste kolom van elke tabel
  2. BEen kolom of combinatie van kolommen die elke rij uniek identificeert
  3. CEen kolom die dubbele waarden mag bevatten maar nooit NULL mag bevatten
  4. DEen wachtwoord voor de database
3.Makkelijk

Hoe heet een rij van een tabel in het relationele model?

  1. AEen tupel
  2. BEen schema
  3. CEen attribuut
  4. DEen domein
4.Gemiddeld

Welke query geeft het hoogste salaris per afdeling?

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

Waar staat de "A" in ACID voor?

  1. AAvailability (beschikbaarheid)
  2. BAggregation (aggregatie)
  3. CAccuracy (nauwkeurigheid)
  4. DAtomicity (atomiciteit)
6.Gemiddeld

Een tabel slaat het adres van de klant op in elke bestelrij. Het adres in één rij wijzigen maar niet in de andere is een voorbeeld van:

  1. AEen update-anomalie
  2. BEen insert-anomalie
  3. CEen delete-anomalie
  4. DEen phantom read
7.Moeilijk

Tabel b bevat in kolom y de waarden 1, 2 en NULL. Wat geeft SELECT * FROM a WHERE x NOT IN (SELECT y FROM b) terug?

  1. AHelemaal geen rijen
  2. BElke rij van a
  3. CRijen van a waarin x niet 1 of 2 is
  4. DAlleen rijen van a waarin x NULL is
8.Moeilijk

Een tabel heeft een miljoen rijen en een Booleaanse kolom is_active die voor 95% ervan TRUE is. Waarom kan de optimizer een index op is_active negeren voor WHERE is_active = TRUE?

  1. ADe optimizer gebruikt nooit indexen in WHERE-clausules
  2. BDe meeste rijen voldoen, dus een volledige tabelscan is goedkoper dan veel index-lookups
  3. CTRUE wordt door de index als NULL behandeld
  4. DOp Booleaanse kolommen kunnen geen indexen worden gemaakt

Antwoordenblad

  1. 1. B · Houdt rijen over waarvan country gelijk is aan een van de waarden in de lijst
  2. 2. B · Een kolom of combinatie van kolommen die elke rij uniek identificeert
  3. 3. A · Een tupel
  4. 4. A · SELECT dept, MAX(salary) FROM emp GROUP BY dept
  5. 5. D · Atomicity (atomiciteit)
  6. 6. A · Een update-anomalie
  7. 7. A · Helemaal geen rijen
  8. 8. B · De meeste rijen voldoen, dus een volledige tabelscan is goedkoper dan veel index-lookups

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