В своих функциях postgres я использую полное имя (например, schemaname.tablename
) для объектов внутри него, таких как таблицы и другие функции.
Но почти во всех случаях я имею в виду объекты, которыев той же схеме, что и схема самой функции.Как я могу сообщить, что функция postgres по умолчанию использует ту же схему, что и для объектов в ней?
Таким образом, я мог бы получить schema_a.myfunction
, который ссылается на mytable
, но эторазрешить до schema_a.mytable
и schema_b.myfunction
, что также относится к mytable
, но разрешится до schema_b.mytable
.
Как я могу настроить все таким образом?Это действительно упростит задачу, упростив рефакторинг и переименование схем.У меня одно и то же имя таблицы во многих схемах, поэтому мне, к сожалению, приходится использовать полные имена во всех функциях.
Это означает, что если я изменяю что-то вроде имени схемы, мне нужно переименовать все вхождения schema_a.
schema_new.
во всех функциях postgres.Мне интересно, есть ли лучший способ, потому что иногда это может привести к ошибкам (я могу пропустить замену или заменить что-то, чего у меня не должно быть).