sql >> Databáze >  >> RDS >> PostgreSQL

Modul nebyl nalezen při importu balíčku Python v rámci procedury plpython3u

Kromě dalších proměnných prostředí, jako je PGDATA ve skriptu shellu (pg_service.sh) nastavte PYTHONPATH='/path/to/python:/path/to/your/module'

Např. cat /Users/postgres/pg_service.sh

export PGDATABASE=postgres
export PGUSER=postgres
export PGPORT=5432
export PATH=/Library/PostgreSQL/11/bin:$PATH
export PGLOCALEDIR=/Library/PostgreSQL/11/share/locale
export PYTHONUSERBASE=/Users/postgres/packaging_tutorial
export PYTHONPATH=/Library/edb/languagepack-11/Python-3.6:$PYTHONUSERBASE
pg_ctl -D /Library/PostgreSQL/11/data -l /Users/postgres/logfile $1

Spusťte server:

> sudo -u postgres /Users/postgres/pg_service.sh start
waiting for server to start.... done
server started 

/Users/postgres/packaging_tutorial/example_pkg/__init__.py :

def retpy3():
    return 7/5

funkce pg:

CREATE OR REPLACE FUNCTION expy3()
RETURNS text
LANGUAGE plpython3u
AS $$
import example_pkg
return example_pkg.retpy3()
$$;

Výstup

psql  -c 'select * from expy3()';
 expy3
--------
 1.4



  1. Nelze se připojit k MySQL a provádět operace v Play Framework 2.4

  2. .NET:Jak vložit XML dokument do SQL Serveru

  3. Jak mohu kombinovat OR a AND v dotazech ORM

  4. mysql_fetch_array() vrací 'dodaný argument není platný zdroj výsledků MySQL'