Aby uzyskać definicję funkcji, użyj pg_get_functiondef()
:
select pg_get_functiondef(oid)
from pg_proc
where proname = 'foo';
Istnieją podobne funkcje do pobierania definicji indeksu, widoku, reguły i tak dalej. Szczegółowe informacje można znaleźć w instrukcji:http://www.postgresql.org /docs/current/static/functions-info.html
Uzyskanie definicji typu użytkownika jest nieco trudniejsze. Będziesz musiał zapytać information_schema.attributes
za to:
select attribute_name, data_type
from information_schema.attributes
where udt_schema = 'public'
and udt_name = 'footype'
order by ordinal_position;
Od tego musisz ponownie złożyć create type
oświadczenie.
Więcej szczegółów znajdziesz w dokumentacji katalogu systemowego:http ://www.postgresql.org/docs/current/static/catalogs.html
Ale powinieneś preferować information_schema
wyświetlenia, jeśli zwracają te same informacje.