Функция триггера может иметь параметры, но эти параметры нельзя передавать как обычную функцию (например, аргументы в определении функции).Вы можете получить тот же результат ... В Python вы получаете доступ к СТАРЫМ и НОВЫМ данным, как описано в ответе выше.Например, я могу использовать TD ['new'] ['column_name'] в python для ссылки на новые данные для column_name.У вас также есть доступ к специальной переменной TD ['args'].Итак, если вам нравится:
create function te() returns trigger language plpython2u as $function$
plpy.log("argument passed 1:%s 2:%s" %(TD['args'][0], TD['args'][1], ))
$function$
create constraint trigger ta after update of ttable
for each for execute procedure te('myarg1','myarg2');
Разумеется, эти аргументы являются статическими, но они полезны при вызове общей функции триггера из нескольких объявлений триггера.Я почти уверен, что такие же переменные доступны для других языков хранимых процедур.(извините, если код не работает дословно, но я практикую эту технику, поэтому я знаю, что вы можете передавать аргументы!).