PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Jak obsługiwane są instrukcje importu w plpythonie?

import jest wykonywane przy każdym wywołaniu funkcji. To jest to samo zachowanie, które można by uzyskać, gdybyś napisał normalny moduł Pythona z import instrukcja wewnątrz ciała funkcji, w przeciwieństwie do na poziomie modułu.

Tak, wpłynie to na wydajność.

Możesz obejść ten problem, buforując swoje importy w następujący sposób:

CREATE FUNCTION test() RETURNS text
LANGUAGE plpythonu
AS $$
if 'json' in SD:
    json = SD['json']
else:
    import json
    SD['json'] = json

 return json.dumps(...)
$$;

Nie jest to wprawdzie zbyt ładne i omawiane są lepsze sposoby na zrobienie tego, ale nie zdarzy się to przed PostgreSQL 9.4.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Doctrine2 nie ustawia sekwencji jako domyślnej dla kolumny id (postgres)

  2. Dołączanie (wypychanie) i usuwanie z tablicy JSON w PostgreSQL 9.5+

  3. problem z aliasem kolumny postgres

  4. Jak mogę się upewnić, że zduplikowane wiersze nie zostaną dodane do mojej tabeli bazy danych za pośrednictwem activerecords?

  5. Nie można wywołać zasobu JNDI w pliku persistence.xml