Okidači protiv pohranjenih postupaka
U bazi podataka okidač je postupak (segment koda) koji se izvršava automatski kada se u tablici / prikazu pojave neki specifični događaji. Između ostalih primjena, okidači se uglavnom koriste za održavanje integriteta u bazi podataka. Pohranjeni postupak je metoda koju mogu koristiti aplikacije koje pristupaju relacijskoj bazi podataka. Pohranjeni postupci obično se koriste kao metoda za provjeru valjanosti podataka i kontrolu pristupa bazi podataka.
Što su okidači?
Okidač je postupak (segment koda) koji se izvršava automatski kada se u tablici / prikazu baze podataka pojave neki specifični događaji. Između ostalih primjena, okidači se uglavnom koriste za održavanje integriteta u bazi podataka. Okidači se također koriste za provođenje poslovnih pravila, reviziju promjena u bazi podataka i repliciranje podataka. Najčešći okidači su okidači jezika za upravljanje podacima (DML) koji se aktiviraju kada se manipulira podacima. Neki sustavi baza podataka podržavaju okidače koji nisu podaci, a koji se pokreću kada se dogode događaji jezika definicije podataka (DDL). Neki primjeri su okidači koji se aktiviraju kada se kreiraju tablice, tijekom operacija urezivanja ili vraćanja itd. Ovi okidači mogu se posebno koristiti za reviziju. Oracle sustav baze podataka podržava okidače na razini sheme (tjokidači koji se aktiviraju kada se sheme baze podataka izmijene) kao što su After Creation, Before Alter, After Alter, Before Drop, After Drop itd. Četiri glavne vrste okidača koje podržava Oracle su okidači Razina retka, Okidači Razine stupca, Okidači svake vrste reda i Za svaki okidač vrste izjave.
Što su pohranjene procedure?
Pohranjeni postupak je metoda koju aplikacija može koristiti za pristup relacijskoj bazi podataka. Pohranjeni postupci obično se koriste kao metoda za provjeru valjanosti podataka i kontrolu pristupa bazi podataka. Ako neka operacija obrade podataka zahtijeva izvršavanje nekoliko SQL izraza, takve se operacije provode kao pohranjene procedure. Prilikom pozivanja pohranjene procedure mora se koristiti izraz CALL ili EXECUTE. Pohranjene procedure mogu vratiti rezultate (na primjer rezultate iz SELECT izraza). Te rezultate mogu koristiti drugi pohranjeni postupci ili aplikacije. Jezici koji se koriste za pisanje pohranjenih procedura obično podržavaju upravljačke strukture kao što su if, while, for itd. Ovisno o sustavu baze podataka koji se koristi, nekoliko jezika može se koristiti za implementaciju pohranjenih procedura (npr. PL / SQL i java u Oracle, T- SQL (Transact-SQL) i. NET Framework u Microsoft SQL Server (. Nadalje, MySQL koristi vlastite pohranjene procedure.
Koja je razlika između okidača i pohranjenih postupaka?
Okidač je postupak (segment koda) koji se izvršava automatski kada se u tablici / prikazu baze podataka pojave neki specifični događaji, dok je pohranjena procedura metoda koju aplikacija može koristiti u pristupu relacijskoj bazi podataka. Okidači se izvršavaju automatski kada se dogodi događaj na koji bi okidač trebao reagirati. Ali za izvršavanje pohranjene procedure mora se koristiti posebna naredba CALL ili EXECUTE. Okidači za otklanjanje pogrešaka mogu biti teži i složeniji od otklanjanja pogrešaka u pohranjenim procedurama. Okidači su vrlo korisni kada želite biti sigurni da se nešto događa kada se dogodi određeni događaj.