PostgreSQL 8.0.0beta3 Documentation | ||||
---|---|---|---|---|
Prev | Fast Backward | Chapter 37. PL/Perl - Perl Procedural Language | Fast Forward | Next |
You can use the %_SHARED to store data between function calls.
For example:
CREATE OR REPLACE FUNCTION set_var(name TEXT, val TEXT) RETURNS TEXT AS $$ if ($_SHARED{$_[0]} = $_[1]) { return 'ok'; } else { return "Can't set shared variable $_[0] to $_[1]"; } $$ LANGUAGE plperl; CREATE OR REPLACE FUNCTION get_var(name TEXT) RETURNS text AS $$ return $_SHARED{$_[0]}; $$ LANGUAGE plperl; SELECT set_var('sample', $q$Hello, PL/Perl! How's tricks?$q$); SELECT get_var('sample');