Temat: Trigger przed insertem
Witam, zaczynam dopiero zabawę z bazami danych i natrafiłem na pewien problem.. Otóż, mam za zadanie napisać trigger, który przed dodaniem wiersza do tabeli wizyty sprawdzi w tabeli grafik (lekarzy) czy można w ogóle dodać wizytę. Czyli żeby dodać wizytę termin wizyty i grafik danego lekarza muszą się na siebie nakładać.
Jednakże dostaję błąd: ERROR:  more than one row returned by a subquery used as an expression i nie wiem jak to zrobić żeby działało.. prosiłbym o pomoc. 
create function daty_check() returns trigger as '
declare
        x bool;
        licznik int4;
begin
        licznik = 0;
    
        x = ( select (grafik.pocz, grafik.kon) overlaps (new.data_rozp , new.data_zak)
                 from grafik, wizyta WHERE grafik.id_lekarza = NEW.id_lekarza);
        if x = false then
        raise notice '' x = false ''; 
                licznik = licznik + 1;    
        end if;
        if licznik = 0 then        
        raise notice '' mozna dodawac'';
        return new;
    
        else
        raise notice '' przedzialy sie pokrywaja  '';
        end if;
end;
' language 'plpgsql';
create trigger daty_check_t before insert on wizyta for each row execute procedure daty_check();