PostgreSQL andmebaasis on loodud tabelid järgmiste lausetega.

CREATE TABLE Vastuvott (
vastuvott_id SERIAL,
ruum_id INTEGER,
vastuvotja_id INTEGER NOT NULL,
toimumise_kuupaev d_kuupaev_kohustuslik,
kommentaar d_kirjeldus,
CONSTRAINT Vastuvott_id_on_primaarvoti PRIMARY KEY (vastuvott_id),
CONSTRAINT Vastuvott_toimub_ruumis FOREIGN KEY (ruum_id) REFERENCES Ruum
(ruum_id),
CONSTRAINT Tootaja_votab_vastu FOREIGN KEY (vastuvotja_id) REFERENCES Tootaja
(tootaja_id) ,
CONSTRAINT Kas_vastuvott_ruum_voi_kommentaar_voi_molemad_maaratud CHECK (ruum_id
IS NOT NULL OR kommentaar IS NOT NULL)
) WITH (fillfactor=90);

CREATE TABLE Vastuvotuaeg (
vastuvott_id INTEGER NOT NULL,
alguse_kellaaeg TIME NOT NULL,
CONSTRAINT Vastuvott_id_alguse_kellaaeg_kombinatsioon_on_primaarvoti PRIMARY KEY
(vastuvott_id, alguse_kellaaeg),
CONSTRAINT Vastuvotuaeg_on_seotud_vastuvotuga FOREIGN KEY (vastuvott_id)
REFERENCES Vastuvott (vastuvott_id) ON DELETE CASCADE
);

Palun loo andmebaasi triger, mis realiseerib reegli.

Kui vastuvõtt toimub samal kuupäeval, kui tänane kuupäev ning vastuvõtuaja kellaaeg on varasem, kui hetke kellaaeg, siis määratakse vastuvõtuaja kellaajaks hetke kellaaeg.