Wijzigen van database-inhoud - Delete statement

5 belangrijke vragen over Wijzigen van database-inhoud - Delete statement

Hoe verwijder je alle rijen van een tabel?

delete from begeleider

delete * from begeleider is dus fout!!!!! Waarom? Omdat een delete op rij-niveau werkt.

Hoe kun je een delete statement uitvoeren op basis van een conditie?

delete from Begeleider
where cursus = 'IM';

Hoe wordt een delete statement afgewerkt?

Rij voor rij. De rij die aan de beurt is noem je de 'actuele rij'.
  • Hogere cijfers + sneller leren
  • Niets twee keer studeren
  • 100% zeker alles onthouden
Ontdek Study Smart

Waar moet je bij opletten i.c.m. regels bij een delete statement?

Dat door cascading deletes ook rijen in andere tabellen verwijderd kunnen worden.

Hoe werkt een delete met een subselect?


Verwijder de cursussen zonder inschrijvingen.
Eerste oplossing, met niet-gecorreleerde subselect:


delete from Cursus
where code not in (select cursus
from Inschrijving);

Eventuele bijbehorende rijen in Begeleider en in Voorkenniseis worden
meeverwijderd, vanwege de cascading deletes, áls dit alles tenminste niet
stuit op een probleem vanwege een restricted delete.
Tweede oplossing, met gecorreleerde subselect:

delete from Cursus C
where not exists (select *
from Inschrijving
where cursus = C.code);

De vragen op deze pagina komen uit de samenvatting van het volgende studiemateriaal:

  • Een unieke studie- en oefentool
  • Nooit meer iets twee keer studeren
  • Haal de cijfers waar je op hoopt
  • 100% zeker alles onthouden
Onthoud sneller, leer beter. Wetenschappelijk bewezen.
Trustpilot-logo