Глава 43. PL/Python — Язык программирования Python для процедурного программирования#

Глава 43. PL/Python — Язык программирования Python для процедурного программирования

Глава 43. PL/Python — Язык программирования Python для процедурного программирования

Процедурный язык PL/Python позволяет писать функции и процедуры для Tantor BE на языке Python.

Чтобы установить PL/Python в конкретной базе данных, используйте CREATE EXTENSION plpython3u.

Подсказка

Если язык установлен в template1, то все последующие созданные базы данных будут автоматически иметь установленный язык.

PL/Python доступен только как «недоверенный» язык, что означает, что он не предлагает никакого способа ограничить то, что пользователи могут сделать в нем, и поэтому он называется plpython3u. В будущем может появиться доверенный вариант plpython, если будет разработан механизм безопасного выполнения на Python. Автор функции на непроверенном PL/Python должен позаботиться о том, чтобы функцию нельзя было использовать для выполнения нежелательных действий, поскольку она сможет делать все то, что может делать пользователь, вошедший в систему как администратор базы данных. Только суперпользователи могут создавать функции на непроверенных языках, таких как plpython3u.

Примечание

Пользователи исходных пакетов должны специально включить сборку PL/Python во время процесса установки. (См. инструкции по установке для получения дополнительной информации). Пользователи бинарных пакетов могут найти PL/Python в отдельном подпакете.