Verschil Tussen Triggers En Cursors

Verschil Tussen Triggers En Cursors
Verschil Tussen Triggers En Cursors

Video: Verschil Tussen Triggers En Cursors

Video: Verschil Tussen Triggers En Cursors
Video: Cursors 2024, November
Anonim

Triggers versus cursors

In een database is een trigger een procedure (codesegment) die automatisch wordt uitgevoerd wanneer bepaalde gebeurtenissen plaatsvinden in een tabel / weergave. Triggers worden onder andere voornamelijk gebruikt voor het handhaven van de integriteit in een database. Een cursor is een besturingsstructuur die in databases wordt gebruikt om door de databaserecords te bladeren. Het lijkt erg op de iterator die door veel programmeertalen wordt geleverd.

Wat zijn triggers?

Een trigger is een procedure (codesegment) die automatisch wordt uitgevoerd wanneer bepaalde specifieke gebeurtenissen plaatsvinden in een tabel / weergave van een database. Triggers worden onder andere voornamelijk gebruikt voor het handhaven van de integriteit in een database. Triggers worden ook gebruikt om bedrijfsregels af te dwingen, wijzigingen in de database te controleren en gegevens te repliceren. De meest voorkomende triggers zijn Data Manipulation Language (DML) -triggers die worden geactiveerd wanneer gegevens worden gemanipuleerd. Sommige databasesystemen ondersteunen niet-gegevenstriggers, die worden geactiveerd wanneer DDL-gebeurtenissen (Data Definition Language) plaatsvinden. Enkele voorbeelden zijn triggers die worden geactiveerd wanneer tabellen worden gemaakt, tijdens commit- of rollback-operaties, enz. Deze triggers kunnen speciaal worden gebruikt voor auditing. Het Oracle-databasesysteem ondersteunt triggers op schemaniveau (bijvtriggers die worden geactiveerd wanneer databaseschema's worden gewijzigd) zoals After Creation, Before Alter, After Alter, Before Drop, After Drop, enz. De vier belangrijkste typen triggers die door Oracle worden ondersteund zijn triggers op rijniveau, triggers op kolomniveau, triggers voor elk rijtype en Triggers voor elk afschrifttype.

Wat zijn cursors?

Een cursor is een besturingsstructuur die in databases wordt gebruikt om door de databaserecords te bladeren. Het lijkt erg op de iterator die door veel programmeertalen wordt geleverd. Naast het doorlopen van records in een database, vergemakkelijken cursors ook het ophalen van gegevens, het toevoegen en verwijderen van records. Door de juiste weg te definiëren, kunnen cursors ook worden gebruikt om achteruit te bewegen. Wanneer een SQL-query een set rijen retourneert, worden deze in feite verwerkt met cursors. Een cursor moet worden gedeclareerd en een naam krijgen, voordat deze kan worden gebruikt. Vervolgens moet de cursor worden geopend met het OPEN-commando. Deze bewerking plaatst de cursor net voor de eerste rij van de resultaatset met records. Vervolgens moet de cursor de FETCH-bewerking uitvoeren om daadwerkelijk een rij met gegevens in de toepassing te krijgen. Ten slotte moet de cursor worden gesloten met de functie SLUITEN. Gesloten cursors kunnen weer worden geopend.

Wat is het verschil tussen Triggers en Cursors?

Een trigger is een procedure (codesegment) die automatisch wordt uitgevoerd wanneer bepaalde specifieke gebeurtenissen plaatsvinden in een tabel / weergave van een database, terwijl een cursor een controlestructuur is die in databases wordt gebruikt om door de databaserecords te gaan. Een cursor kan binnen een trigger worden gedeclareerd en gebruikt. In een dergelijke situatie zou de declaratie-verklaring zich binnen de trigger bevinden. Dan is de reikwijdte van de cursor beperkt tot die trigger. Als binnen een trigger een cursor wordt gedeclareerd op een ingevoegde of verwijderde tabel, zou een dergelijke cursor niet toegankelijk zijn vanaf een geneste trigger. Zodra een trigger is voltooid, worden alle cursors die binnen de trigger zijn gemaakt, ongedaan gemaakt.

Aanbevolen: