PROCEDURA:
CREATE OR REPLACE PROCEDURE INSERT_UKUPNO(P_SIFRA_TROSKOVA IN TROSKOVI_REGISTRACIJE.SIFRA_TROSKOVA%TYPE,
P_UKUPNO IN TROSKOVI_REGISTRACIJE.UKUPNO%TYPE) AS
BEGIN
UPDATE TROSKOVI_REGISTRACIJE SET
UKUPNO=P_UKUPNO
WHERE SIFRA_TROSKOVA = P_SIFRA_TROSKOVA;
END INSERT_UKUPNO;
/
TRIGGER:
CREATE OR REPLACE TRIGGER "UKUPNO_RACUNA_TR"
before INSERT ON STAVKA_TROSKOVA
FOR EACH ROW
DECLARE
L_UKUPNO TROSKOVI_REGISTRACIJE.UKUPNO%TYPE;
BEGIN
SELECT SUM(IZNOS_U_DINARIMA)INTO L_UKUPNO FROM STAVKA_TROSKOVA
WHERE STAVKA_TROSKOVA.SIFRA_TROSKOVA= :NEW.SIFRA_TROSKOVA;
INSERT_UKUPNO(:NEW.SIFRA_TROSKOVA, L_UKUPNO);
END;
TABELE:
CREATE TABLE "TROSKOVI_REGISTRACIJE"
( "SIFRA_TROSKOVA" VARCHAR2(20) NOT NULL ENABLE,
"UKUPNO" NUMBER,
CONSTRAINT "TROSKOVI_REGISTRACIJE_PK" PRIMARY KEY ("SIFRA_TROSKOVA") ENABLE
)
/
CREATE TABLE "STAVKA_TROSKOVA"
( "SIFRA_TROSKOVA" VARCHAR2(20) NOT NULL ENABLE,
"REDNI_BROJ" VARCHAR2(20) NOT NULL ENABLE,
"IZNOS_U_DINARIMA" NUMBER,
"PRIMAOC" VARCHAR2(20),
"UPLATNI_RACUN" VARCHAR2(20),
CONSTRAINT "STAVKA_TROSKOVA_PK" PRIMARY KEY ("SIFRA_TROSKOVA", "REDNI_BROJ") ENABLE,
CONSTRAINT "STAVKA_TROSKOVA_FK" FOREIGN KEY ("SIFRA_TROSKOVA")
REFERENCES "TROSKOVI_REGISTRACIJE" ("SIFRA_TROSKOVA") ENABLE
)
/
Unapred hvala za pomoc