Я хочу создать триггер, который будет выполнять процедуру сохранения, которая обновит несколько строк. Процедура работает, когда я тестирую ее с использованием метода Call , но триггер не может найти его с ошибкой, что функция не существует. Вот моя процедура
create or replace PROCEDURE update_reg_location(latitude text, longitude text,userid int)
LANGUAGE SQL
AS $$
update users set reg_lat=latitude , reg_lon=longitude where id =userid
$$;
Когда я использую
call update_reg_location('123','234',1)
из IDE, она работает нормально, и запись обновляется, но когда я использую ее в триггере, она не компилируется.
CREATE TRIGGER update_reg_location
after INSERT ON users
FOR EACH ROW
EXECUTE PROCEDURE update_reg_location('123','234',1);
Также получаю ошибку, когда я хочу получить новое значение вставленной строки, как это
CREATE TRIGGER update_reg_location
after INSERT ON users
FOR EACH ROW
EXECUTE PROCEDURE update_reg_location(new.lat,new.lon,1);
получая ошибку как синтаксическая ошибка в или около нового. (new.lat, new.lon, 1); в этой строке