Глава 44. PL/Python — процедурный язык Python
Содержание
Процедурный язык PL/Python позволяет писать функции и процедуры Postgres Pro на языке Python.
Чтобы установить PL/Python в определённую базу данных, выполните команду CREATE EXTENSION plpython3u
.
Подсказка
Если язык устанавливается в template1
, он будет автоматически установлен во все создаваемые впоследствии базы данных.
PL/Python представлен только в виде «недоверенного» языка, что означает, что он никаким способом не ограничивает действия пользователей, и поэтому он называется plpython3u
. Доверенная вариация plpython
может появиться в будущем, если в Python будет разработан безопасный механизм выполнения. Автор функции на недоверенном языке PL/Python должен позаботиться о том, чтобы эту функцию нельзя было использовать не по назначению, так как она может делать всё, что может пользователь с правами администратора баз данных. Создавать функции на недоверенных языках, таких как plpython3u
, разрешено только суперпользователям.
Примечание
Пользователи, имеющие дело с исходным кодом, должны явно включить сборку PL/Python в процессе установки. (За дополнительными сведениями обратитесь к инструкциям по установке.) Пользователи двоичных пакетов могут найти PL/Python в отдельном модуле.