ZSBD-2st-1.2-w3.tresc-1.1-Slajd11
Definiowanie aktywnych reguł Oracle(1)
Na slajdzie przedstawiono kolejny przykład definicji aktywnej reguły w systemie Oracle, który zawiera warunek logiczny determinujący odpalenie akcji reguły. Zadaniem pokazanej reguły jest uniemożliwienie obniżenia płacy pracowników poniżej kwoty 1000 zł. Zdarzeniem uaktywniającym regułę jest modyfikacja atrybutu „pensja ” relacji „Pracownicy ”. Definicja reguły zawiera dodatkową klauzulę WHEN, w której zdefiniowano warunek konieczny dla odpalenia akcji reguły. Prefiks „new ” użyty w warunku logicznym służy do odwołania się do wartości atrybutów modyfikowanych krotek. Zdefiniowana w ciele reguły akcja zawiera wywołanie funkcji zgłaszającej błąd i wycofującej modyfikację.
Poniżej definicji przedstawiono przykładowy scenariusz, w którym jest modyfikowana pensja pracownika o nazwisku Tarzan. W tym wypadku weryfikacja warunku skojarzonego z regułą jest negatywna. Pensja po modyfikacji pozostaje na poprawnym poziomie powyżej 1000 zł. W związku z tym, mimo wystąpienia zdarzenia odpalającego akcję, w tym wypadku akcja reguły nie zostanie odpalona.