hstore_plperl
transform between hstore and plperl
Overview
| Package | Version | Category | License | Language |
|---|---|---|---|---|
plperl | 1.0 | LANG | PostgreSQL | C |
| ID | Extension | Bin | Lib | Load | Create | Trust | Reloc | Schema |
|---|---|---|---|---|---|---|---|---|
| 3260 | plperl | No | Yes | No | Yes | No | No | - |
| 3261 | bool_plperl | No | Yes | No | Yes | No | No | - |
| 3262 | hstore_plperl | No | Yes | No | Yes | No | No | - |
| 3263 | jsonb_plperl | No | No | No | Yes | No | No | - |
| Related | plperl hstore_pllua hstore_plluau hstore_plperlu hstore_plpython3u hstore plperlu plpgsql |
|---|
Version
| PG18 | PG17 | PG16 | PG15 | PG14 |
|---|---|---|---|---|
| 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
Install
Note: This is a built-in contrib extension of PostgreSQL
CREATE EXTENSION hstore_plperl;
Usage
Provides a transform for the hstore type for PL/Perl. When loaded, hstore values are automatically converted to Perl hashes and vice versa.
CREATE EXTENSION hstore_plperl;
CREATE FUNCTION hstore_to_text(val hstore) RETURNS text
LANGUAGE plperl TRANSFORM FOR TYPE hstore AS $$
# val is now a Perl hash reference
my $result = '';
for my $key (sort keys %$val) {
$result .= "$key => $val->{$key}\n";
}
return $result;
$$;
CREATE FUNCTION make_hstore(key text, value text) RETURNS hstore
LANGUAGE plperl TRANSFORM FOR TYPE hstore AS $$
my ($k, $v) = @_;
return { $k => $v };
$$;
SELECT hstore_to_text('a=>1, b=>2'::hstore);
SELECT make_hstore('color', 'blue');
Feedback
Was this page helpful?
Thanks for the feedback! Please let us know how we can improve.
Sorry to hear that. Please let us know how we can improve.