Secinājumi
Praktiskajā darba izpildīšana deva iespēju iepazīties ar aktīvo datu bāzu datu apstrādes mehānismiem.
Darba izpildīšanai tika izdomāta namu pārvaldes neliela datu bāze, kur automātiskai datu atjaunošanai tiek izmantoti trigeri.
Projektējot aktīvās datu bāzes struktūru tika paredzēts, ka dažas datu ievietošanas un atjaunošanas operācijas tiks izpildītas automātiski. Lai to panāktu tika izveidoti 6 trigeri.
Trigeru pārbaudīšanas laikā es sastopos ar Oracle paziņojumu par mutējošu tabulu. Lai izvairīties no šīs kļūdas, bija jāveic modificēto ierakstu uzskaiti. Šī kļūda rādās tad, ja trigeris ietver vaicājumu tabulai, kurai šis trigeris izveidots. Tas izraisa situāciju, kad vaicājuma rezultātā ieraksti tiek atgriezti nenoteiktā kārtībā un līdz ar to trigera darbības rezultāts katru reizi būs atšķirīgs. Minēto problēmu var atrisināt, atzīmējot ierakstus, kurus jau skara trigera darbība. Šim nolūkam var izmantot rindas identifikatorus, ierakstot tos masīvā. Šim nolūkam darba izpildīšanas gaitā tika izveidoti divi papildus trigeri: viens, kas nostrādā pirms darbības ar tabulu – tas uzstāda skaitītāju uz 0; otrs nostrādā pēc darbības ar tabulu un izrēķina ierakstu skaitu, kurus skar trigera darbība, kā arī ievieto šo ierakstu identifikatorus masīvā. Rezultātā trigera darbības gaitā notiek vēršanas pie ierakstiem, norādītiem masīvā, un nekādu pārpratumu vai viena un tā paša ieraksta atkārtotas apstrādes nevar rasties.
Praktiskā darba izpildīšana palīdzēja saprast aktīvo datu apstrādes mehānismus un pašu ideju, kas ir aktīvo DB pamatā. Bija interesanti uzzināt par mutējošām tabulām un paņēmieniem, kas ļauj izvairīties no tām.
…