hstore_plperlu

transform between hstore and plperlu

Overview

PackageVersionCategoryLicenseLanguage
plperlu1.0LANGPostgreSQLC
IDExtensionBinLibLoadCreateTrustRelocSchema
3270plperluNoYesNoYesNoNo-
3271bool_plperluNoNoNoYesNoNo-
3272jsonb_plperluNoNoNoYesNoNo-
3273hstore_plperluNoNoNoYesNoNo-
Relatedplperlu hstore_pllua hstore_plluau hstore_plperl hstore_plpython3u hstore plperl plpgsql

Version

PG18PG17PG16PG15PG14
1.01.01.01.01.0

Install

Note: This is a built-in contrib extension of PostgreSQL

CREATE EXTENSION hstore_plperlu;

Usage

hstore_plperlu: Transform between hstore and PL/Perl untrusted

Provides a transform for the hstore type for PL/Perl Untrusted. When loaded, hstore values are automatically converted to Perl hashes and vice versa.

CREATE EXTENSION hstore_plperlu;

CREATE FUNCTION hstore_to_json_u(val hstore) RETURNS text
LANGUAGE plperlu TRANSFORM FOR TYPE hstore AS $$
  use JSON;
  # val is now a Perl hash reference
  return encode_json($val);
$$;

CREATE FUNCTION make_hstore_u(key text, value text) RETURNS hstore
LANGUAGE plperlu TRANSFORM FOR TYPE hstore AS $$
  my ($k, $v) = @_;
  return { $k => $v };
$$;

SELECT hstore_to_json_u('a=>1, b=>2'::hstore);
SELECT make_hstore_u('color', 'blue');

Last Modified 2026-03-12: add pg extension catalog (95749bf)