Bonjour à tous,
Après avoir étudié une grande partie de ce que propose Oracle SQL nous allons approfondir le sujet avec le langage PL / SQL qui nous permettra d’intégrer plus de contraintes du diagramme relationnel lors de la création de nos tables, tel que les contraintes de surjection.
Structure Trigger :
CREATE TRIGGER nomTrigger
BEFORE INSERT OR UPDATE ON nomTable
FOR EACH ROW
WHEN ( NEW.attr = … ) -- Optionnel
BEGIN
…
RAISE_APPLICATION_ERROR ( -20000, “Insertion ou MaJ non effectuée” );
END
;
/
Il est possible de déclencher un Trigger après une action en remplacant BEFORE par AFTER
Il est possible de déclencher un Trigger lors d’une insertion (INSERT), mise à jour (UPDATE) ou suppression (DELETE) de tuple.
Variable :
DECLARE -- entre FOR EACH ROW et BEGIN
nbNum NUMBER;
…
OU
DECLARE
nbNum nomTable.attr%TYPE;
…
Conditionnel :
IF ( :NEW.attr > 2 ) THEN
…
END IF;
Si vous pensez que cette série d’articles peut intéresser d’autres personnes,vous pouvez partager cet article sur les réseaux sociaux et par mail à vos amis.
Pour toutes questions vous pouvez me contacter par mail ou via l’onglet “Contact” en haut du site.
Merci !