Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Interbase, cudno pitanje

[es] :: Baze podataka :: Interbase, cudno pitanje

[ Pregleda: 3053 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

ultraKeen
ultraKeen
Zemun

Član broj: 2396
Poruke: 289
*.telekom.yu

ICQ: 36109339
Sajt: ultrakeen.blogspot.com


+1 Profil

icon Interbase, cudno pitanje30.06.2002. u 05:50 - pre 265 meseci
Moze li se nekako,
recimo u TRIGGER BEFORE
(moze i AFTER, ne bi mi smetalo ali bi mi BEFORE bas godilo) - spreciti
bas sama akcija koja je izazvala okidanje trigera ?

Recimo pri dodavanju novog reda u TRIGGER BEFORE INSERT - saamo to
dodavanje novog reda (koje valda(?) tek treba da usledi)...
jer mi mogucnost dodavanja novog reda treba da zavisi
od statusnih stanja ostalih/drugih tabela recimo...

Znam da je mozda mesto za tako sta PRE pokusaja dodavanja reda
(u samom front end koodu),
ali ja bi to ipak da resim trigerima u bazi... nekako mi je sigurnije...
postoji samo jedan apsolut u logickoj ravni desavanja/vremena:
SVE je RELATIVNO sem:
- osnovnih konstanti svemira
- logike
...i ove tvrdnje
*
Daniel J. Boorstin: The Discoverers, A History of Man’s Search To Known

Napredak nauke zavisice od covekove spremnosti da poveruje u neverovatno, da prekoraci granicu koju namece zdrav razum.
 
Odgovor na temu

Riste Pejov
Team Leader/Senior Software Developer @
Ein-Sof ltd Skopje
Skopje, Macedonia

Član broj: 128
Poruke: 571
*.mol.com.mk

Jabber: richie@bagra.net.mk
ICQ: 154236769
Sajt: riste.softver.org.mk


Profil

icon Re: Interbase, cudno pitanje02.07.2002. u 03:26 - pre 265 meseci
To se u bazi moze uraditi tako da prvo definiras exception ovako:
Code:

CREATE EXCEPTION za*** 'e sad si najebo, unes podataka ne valja';

i onda ako nesto ne valja u trigerr-a pozoves exception
primer:
Code:

create trigger manje_od_100 for neka_tabela active before insert
as
begin
if (new.kolona < 100 ) then
   exception za***;
end


ovaj kod proverava dali unet rekord u koloni zvana kolona sadrzi broj veci od 100, ukoliko uslov nije ispunjen onda javljas gresku, i rekord se ne insertuje.

People who think they know everything tend to irritate those of us who do.
 
Odgovor na temu

ultraKeen
ultraKeen
Zemun

Član broj: 2396
Poruke: 289
*.komgrap.co.yu

ICQ: 36109339
Sajt: ultrakeen.blogspot.com


+1 Profil

icon Re: Interbase, cudno pitanje02.07.2002. u 11:30 - pre 265 meseci
tacno tako!
(i meni je isto palo na pamet ali kasnije)

lansiranje korisnickog exception-a cak i u BEFORE trigeru obustavlja svaku dalju aktivnost svega sto se tice dogadjaja koji je okinuo trigger, a ne samo desavanja koja se ticu samog kooda u doticnom triggeru... sto je mene grizlo i jelo dok nisam isprobao na primeru...

...a original tekst helpa kako rade Exceptions je po meni malo zamumuljen:

"Terminates the procedure or trigger in which it was raised and undoes any actions performed (directly or indirectly) by the procedure or trigger."

postoji samo jedan apsolut u logickoj ravni desavanja/vremena:
SVE je RELATIVNO sem:
- osnovnih konstanti svemira
- logike
...i ove tvrdnje
*
Daniel J. Boorstin: The Discoverers, A History of Man’s Search To Known

Napredak nauke zavisice od covekove spremnosti da poveruje u neverovatno, da prekoraci granicu koju namece zdrav razum.
 
Odgovor na temu

[es] :: Baze podataka :: Interbase, cudno pitanje

[ Pregleda: 3053 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.