Patrik
PostgreSQL funkcia
SQL
CREATE OR REPLACE FUNCTION public.fn_vrat_vypozicku(
id_vypozicka integer,
datum_vratenia date,
vypozicka_vratena boolean DEFAULT true)
RETURNS void AS
$BODY$
DECLARE
BEGIN
UPDATE
public.vypozicky
SET
datum_vratenia = fn_vrat_vypozicku.datum_vratenia
, vypozicka_vratena = fn_vrat_vypozicku.vypozicka_vratena
WHERE
public.vypozicky.vypozicka_id = fn_vrat_vypozicku.id_vypozicka;
UPDATE
public.kniha
SET
zapozicane_kusy = zapozicane_kusy - 1
WHERE
public.kniha.kniha_id = (
select v.kniha_id
from vypozicky v
where v.vypozicka_id = fn_vrat_vypozicku.id_vypozicka);
UPDATE
public.zakaznik
SET
pocet_aktualne_pozicanych_knih = pocet_aktualne_pozicanych_knih - 1
WHERE
public.zakaznik.zakaznik_id = (
select v.zakaznik_id
from vypozicky v
where v.vypozicka_id = fn_vrat_vypozicku.id_vypozicka);
RETURN;
EXCEPTION WHEN OTHERS THEN
RAISE;
END
$BODY$
LANGUAGE plpgsql
Neformátovaný
Přidáno: 4.1.2019
Expirace: Neuvedeno