Table of Contents
El lenguaje procedimental PL/Python permite escribir funciones y procedimientos de PostgreSQL en el lenguaje Python.
Para instalar PL/Python en una base de datos particular, usa
CREATE EXTENSION plpython3u.
Si instalas un lenguaje en template1, todas las bases de datos
creadas posteriormente tendrán el lenguaje instalado automáticamente.
PL/Python solo está disponible como un lenguaje “no confiable” (untrusted), lo que significa
que no ofrece ninguna forma de restringir lo que los usuarios pueden hacer en él y,
por lo tanto, se llama plpython3u. Una variante
confiable (trusted) plpython podría estar disponible en el futuro
si se desarrolla un mecanismo de ejecución seguro en Python. El
escritor de una función en PL/Python no confiable debe tener cuidado de que la
función no se pueda usar para hacer nada no deseado, ya que podrá
hacer cualquier cosa que podría hacer un usuario que haya iniciado sesión como el
administrador de la base de datos. Solo los superusuarios pueden crear funciones en
lenguajes no confiables como plpython3u.
Los usuarios de paquetes de código fuente deben habilitar especialmente la compilación de PL/Python durante el proceso de instalación. (Consulta las instrucciones de instalación para obtener más información). Los usuarios de paquetes binarios podrían encontrar PL/Python en un subpaquete separado.