Функция триггера Postgresql с параметрами

Я хочу создать триггер для таблицы с именем . Требуется в postgresql для обновления значения в другой таблице с именем student Я пытаюсь сделать это следующим образом. Но я получаю сообщение об ошибке синтаксиса рядом со словом "OLD". Я не понимаю, что в этом плохого. Это мой код:

CREATE OR REPLACE FUNCTION upd8_cred_func
      (id1 VARCHAR, gr1 VARCHAR,id2 VARCHAR, gr2 VARCHAR) 
      RETURNS void AS $$
 BEGIN
    IF  (id1=id2 and gr1 is null and gr2 is not null) THEN 
        update student set tot_cred = tot_cred + 6 where id = id1;
    END IF;
    RETURN;
 END;
$$ LANGUAGE plpgsql;

CREATE TRIGGER upd8_cred
    AFTER UPDATE ON takes
    FOR EACH ROW
    EXECUTE PROCEDURE upd8_cred_func(OLD.id,OLD.grade,NEW.id,NEW.grade);
27
задан 12 October 2011 в 09:23
поделиться