mirror of
https://git.postgresql.org/git/postgresql.git
synced 2025-02-05 19:09:58 +08:00
This provides a mechanism for specifying conversions between SQL data types and procedural languages. As examples, there are transforms for hstore and ltree for PL/Perl and PL/Python. reviews by Pavel Stěhule and Andres Freund
20 lines
646 B
SQL
20 lines
646 B
SQL
-- make sure the prerequisite libraries are loaded
|
|
DO '1' LANGUAGE plpython3u;
|
|
SELECT NULL::hstore;
|
|
|
|
|
|
CREATE FUNCTION hstore_to_plpython3(val internal) RETURNS internal
|
|
LANGUAGE C STRICT IMMUTABLE
|
|
AS 'MODULE_PATHNAME', 'hstore_to_plpython';
|
|
|
|
CREATE FUNCTION plpython3_to_hstore(val internal) RETURNS hstore
|
|
LANGUAGE C STRICT IMMUTABLE
|
|
AS 'MODULE_PATHNAME', 'plpython_to_hstore';
|
|
|
|
CREATE TRANSFORM FOR hstore LANGUAGE plpython3u (
|
|
FROM SQL WITH FUNCTION hstore_to_plpython3(internal),
|
|
TO SQL WITH FUNCTION plpython3_to_hstore(internal)
|
|
);
|
|
|
|
COMMENT ON TRANSFORM FOR hstore LANGUAGE plpython3u IS 'transform between hstore and Python dict';
|