Dodatkowe informacje w triggerze - auto log

0

Cześć,
mam pewien problem i nie bardzo wiem jak sobie z nim poradzić. Może to kwestia złej budowy tabel i całej bazy ale:

mam tabele:

CREATE
TABLE bank
(
id_klienta INT(5) NOT NULL,
srodki real(20) NOT NULL,
PRIMARY KEY (id_klienta)
)

oraz

CREATE
TABLE zamowienia
(
id_zamowienia INT(5) NOT NULL AUTO_INCREMENT,
id_klienta INT(5) NOT NULL,
produkt INT(5) NOT NULL,
wartosc real(20) NOT NULL
PRIMARY KEY (id_zamowienia)
)

Chcialbym teraz utworzyc dodatkowa tabele np bank_log i trzymac tam zmiany srodkow klienta. Mozna to zrobic za pomoc triggera - tyle doczytalem i bede potrafil to zrobic. Chcialbym jednak zeby tabela bank_log miala dodatkowa kolumne, mianowicie, aby dodatkowo trzymala id_zamownienia, ktore wplynelo na stan tych srodkow. Czyli:

CREATE
TABLE bank_log
(
id_klienta INT(5) NOT NULL,
srodki_new real(20) NOT NULL,
srodki_old real(20) NOT NULL,
id_zamowienia INT(5) NOT NULL,
PRIMARY KEY (id_klienta)
)

Z tego co czytalem to chyba nie ma mozliwosci przekazywania zadnych wartosci do triggera.

Czy jest mozliwe aby dopisac wartosc do takiej kolumny kiedy trigger stworzony jest dla update tabeli bank? Czy moze stworzyc jais trigger dla tabeli zamowienia i stamtad wprowadzac zmiany dla tabeli bank i dopisywac do bank_log?

Mma nadzieje, ze jasno opisalem, gdyby cos bylo nie jasne to doprecyzuje. Bardzo prosze o pomoc:)

0

tylko trigger podpięty pod tabelę 'zamówienia' będzie znał "new.id_zamowienia" i "new.id_klienta"
Nie wiem jaka jest logika wyliczenia pola "srodki" w tabeli "bank".
Czy dało by się tę logikę zawrzeć w triggerze podpiętym pod tabelę 'zamowienia' ?

1 użytkowników online, w tym zalogowanych: 0, gości: 1