21.11.2014 Views

Baze podataka 2 - FESB

Baze podataka 2 - FESB

Baze podataka 2 - FESB

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Uz ovako definirani okida, svaki novi unos ili promjena <strong>podataka</strong> 'okida'okida<br />

i pokree izvršavanje instrukcija u okidau.<br />

Svaki novouneseni redak usporedno sa unosom u tablicu STUDENT unosi se i<br />

u sistemsku privremenu tablicu inserted. Za novounešeni red iz tablice<br />

inserted uzimamo vrijednost atributa JMBG te ga pohranjujemo u lokalnu<br />

varijablu @sJMBG.<br />

Ukoliko ne postoji podatak za JMBG<br />

(NULL) takav unos (ili promjena) se<br />

poništava instrukcijom<br />

ROLLBACK TRAN, a korisniku se<br />

prikazuje poruka generirana izrazom<br />

RAISERROR.<br />

1/8611,1U"D!D*<br />

<br />

<br />

-"!("!<br />

Pri tome treba istaknuti nain djelovanja instrukcije<br />

ROLLBACK TRANSACTION, kada se ona primijenjuje<br />

unutar okidaa.<br />

- sve promjene <strong>podataka</strong> koje je izvršila tekua transakcija<br />

se poništavaju (rollback) ukljuujui i promjene koje<br />

eventualno stvara sam okida.<br />

- okida nastavlja sa normalnim izvršavanjem svih<br />

preostalih instrukcija nakon ROLLBACK izraza. Ako neka<br />

od instrukcija koje slijede u okidau vrši promjene na<br />

podacima te promjene se normalno izvršavaju.<br />

- slijed SQL instrukcija ili procedura koja sadrži instrukciju<br />

koja je okinula okida odmah se prekida i preostale<br />

instrukcije koje slijede se ne izvršavaju.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!