/
githubmirror
/
postgres
Обзор
Документация
Войти
/
githubmirror
/
postgres
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
src/pl/plpython/sql/plpython_import.sql
68 строк
1 KB
Andres Freund
plpython: Remove regression test infrastructure for Python 2.
08 мар 2022, 05:20
08 мар 2022, 05:20
db23464
Код
Авторство
О чём код?
-- import python modules CREATE FUNCTION import_fail() returns text AS 'try: import foosocket except ImportError: return "failed as expected" return "succeeded, that wasn''t supposed to happen"' LANGUAGE plpython3u; CREATE FUNCTION import_succeed() returns text AS 'try: import array import bisect import calendar import cmath import errno import math import operator import random import re import string import time except Exception as ex: plpy.notice("import failed -- %s" % str(ex)) return "failed, that wasn''t supposed to happen" return "succeeded, as expected"' LANGUAGE plpython3u; CREATE FUNCTION import_test_one(p text) RETURNS text AS 'try: import hashlib digest = hashlib.sha1(p.encode("ascii")) except ImportError: import sha digest = sha.new(p) return digest.hexdigest()' LANGUAGE plpython3u; CREATE FUNCTION import_test_two(u users) RETURNS text AS 'plain = u["fname"] + u["lname"] try: import hashlib digest = hashlib.sha1(plain.encode("ascii")) except ImportError: import sha digest = sha.new(plain); return "sha hash of " + plain + " is " + digest.hexdigest()' LANGUAGE plpython3u; -- import python modules -- SELECT import_fail(); SELECT import_succeed(); -- test import and simple argument handling -- SELECT import_test_one('sha hash of this string'); -- test import and tuple argument handling -- select import_test_two(users) from users where fname = 'willem';