Triggers in SQL

Hoe laat je een dimensie automatisch vullen bij elke nieuwe insert in een feitentabel?

In SQL kunnen triggers gebruikt worden om dit probleem op te lossen. Triggers zijn een soort van stored procedures die op basis van gebeurtenissen in de database afgevuurd kunnen worden. Een trigger bestaat grofweg uit twee delen:

  • De gebeurtenis die de trigger moet activeren
  • De actie die als gevolg hiervan moet plaatsvinden

Met behulp van triggers kun je bijvoorbeeld inserts, updates en deletes doen.

De onderstaande trigger doet op basis van nieuwe records in de feitentabel inserts in de klant dimensie. De filter die onderaan de statement staat zorgt ervoor dat er voor reeds bestaande klanten niet nóg een insert gedaan wordt. Wanneer er dus in de feitentabel een nieuwe klant een transactie doet, wordt deze klant toegevoegd aan klant dimensie.

Leave Comment

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *