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

Hitno potreban trigger ...

[es] :: Firebird/Interbase :: Hitno potreban trigger ...

[ Pregleda: 4230 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

mladenvasic
Mladen Vasic
Doboj

Član broj: 50512
Poruke: 124
*.teol.net.



Profil

icon Hitno potreban trigger ...10.07.2005. u 09:48 - pre 228 meseci
Pozdrav svima ...
Moze li mi neko pomoci oko jednog problemcica.
Imam 2 tabele:
ARTIKLI i jedna od kolona je "STANJE"
STAVKE i jedna od kolona je "KOLICINA"

Treba mi trigger kada unesem neku kolicinu u tabelu STAVKE (kolona: KOLICINA) da mi se od stanja u tabeli ARTIKLI (kolona: STANJE) oduzme ta kolicina.

Izvinjavam se unaprijed ako je ovo pitanje vec prije postavljeno...
HVALA
 
Odgovor na temu

Alter Ego
null
Pančevo

Član broj: 1880
Poruke: 453
*.bisinter.net.

Sajt: www.tridenet.com


Profil

icon Re: Hitno potreban trigger ...10.07.2005. u 15:03 - pre 228 meseci
Prosto da prostije ne može biti. Ovo radi ono što želiš, kada se ubacuje nova stavka. Ne znam da li želiš da se stanje ažurira i kada se menja količina u postojećoj stavci?
Prikačeni fajlovi
 
Odgovor na temu

mladenvasic
Mladen Vasic
Doboj

Član broj: 50512
Poruke: 124
*.teol.net.



Profil

icon Re: Hitno potreban trigger ...10.07.2005. u 15:52 - pre 228 meseci
Nisam spomenuo da sam pocetnik sto se tice ovih stvari ...
Za azuriranje baze koristim EMS InterBase/Firebird Manager
Trebala bi mi malo preciznija pomoc npr. gdje da upisem neredbe:
SET SQL DIALECT 3;
SET NAMES NONE;
SET TERM ^ ;

i poslije kreiranja triggere:

^
SET TERM ; ^

i za sta one sluze.

I naravno u tabeli ARTIKLI treba da se promjeni stanje samo onog artikla cija je sifra jednaka sifri artikla koji se unosi u tabelu STAVKE.

HVALA JOS JEDNOM ...

 
Odgovor na temu

Alter Ego
null
Pančevo

Član broj: 1880
Poruke: 453
*.bisinter.net.

Sajt: www.tridenet.com


Profil

icon Re: Hitno potreban trigger ...10.07.2005. u 16:36 - pre 228 meseci
Što odmah ne kažeš!? Sam triger počinje od naredbe CREATE TRIGGER pa do znaka ^. Naime, u ISQL i DSQL se početak i kraj trigera moraju posebno da označe, pošto se znak ; već koristi za kraj naredbe, odnosno iskaza. Sa SET TERM se određuje koji će se znak koristiti u tu svrhu. Naredba SET SQL DIALECT 3 određuje kao što ime kaže dijalekt SQL-a (odnosno odgovarajući SQL standard), moguće vrednosti su 2 i 3. O tome ne treba mnogo da brineš.
Većina alata (nemam iskustva sa tim koji ti koristiš) ima opciju automatskog kreiranja trigera – označiš par čekboksova da bi odredio da li se triger izvršava pre ili posle promene (BEFORE i AFTER, respektivno), da li je aktivan (ACTIVE), da li se izvršava pri ubacivanju, ažuriranju ili brisanju n-torki (INSERT, UPDATE i DELETE respektivno), zatim uneseš ime trigera i odrediš pripadajuću tabelu (u našem slučaju tabela STAVKE). Na osnovu ovoga alat automatski generiše triger, a tebi ostaje da implementiraš ono što ti treba (u našem slučaju upit između begin i end). Ja koristim uglavnom IBExpert.
Drugi način je da u editoru upita (svaki alat ga ima) direktno uneseš SQL kod tj. da prekopiraš ono što sam ti poslao i da zatim kompajliraš upit.

Citat:
I naravno u tabeli ARTIKLI treba da se promjeni stanje samo onog artikla cija je sifra jednaka sifri artikla koji se unosi u tabelu STAVKE.

Naravno :) To sam zaboravio. Dakle u upitu samo dodaj:
Code:
WHERE SARTIKLI = STAVKE.SARTIKLA


Evo ti u prilogu kompletan kod za obe tabele, ako te bune ovi moji nazivi.

Još nešto. Trebalo bi da pogledaš Interbase dokumentaciju. Npr. dokument Language Referece objašnjava detaljno trigere i procedure. Takođe je za početak dobar i Data Definition Guide.

Samo napred. Firebird je odlična baza za učenje i vežbanje.
Prikačeni fajlovi
 
Odgovor na temu

mladenvasic
Mladen Vasic
Doboj

Član broj: 50512
Poruke: 124
*.teol.net.



Profil

icon Re: Hitno potreban trigger ...10.07.2005. u 17:22 - pre 228 meseci
Uspjeo sam, HVALA NA POMOCI ...

 
Odgovor na temu

[es] :: Firebird/Interbase :: Hitno potreban trigger ...

[ Pregleda: 4230 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

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