diff options
author | Bruce Momjian <bruce@momjian.us> | 2004-08-18 03:37:56 +0000 |
---|---|---|
committer | Bruce Momjian <bruce@momjian.us> | 2004-08-18 03:37:56 +0000 |
commit | 1f0a19c2638ced556ce1fc4a7f61383131c9a9e9 (patch) | |
tree | 3b30ff85f0c6e21bcf23ce450716378c5b39847a /doc/src | |
parent | 3d20578e93829ac5c07140f7563d579c51623f24 (diff) | |
download | postgresql-1f0a19c2638ced556ce1fc4a7f61383131c9a9e9.tar.gz postgresql-1f0a19c2638ced556ce1fc4a7f61383131c9a9e9.zip |
The enclose patch clarifies and makes a more useful example for the
Global Values in PL/Perl section of the documents.
David Fetter
Diffstat (limited to 'doc/src')
-rw-r--r-- | doc/src/sgml/plperl.sgml | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/doc/src/sgml/plperl.sgml b/doc/src/sgml/plperl.sgml index cc24755615a..4080a80b7ef 100644 --- a/doc/src/sgml/plperl.sgml +++ b/doc/src/sgml/plperl.sgml @@ -1,5 +1,5 @@ <!-- -$PostgreSQL: pgsql/doc/src/sgml/plperl.sgml,v 2.26 2004/07/21 20:44:52 momjian Exp $ +$PostgreSQL: pgsql/doc/src/sgml/plperl.sgml,v 2.27 2004/08/18 03:37:56 momjian Exp $ --> <chapter id="plperl"> @@ -317,23 +317,25 @@ $$ LANGUAGE plperl; <sect1 id="plperl-global"> <title>Global Values in PL/Perl</title> <para> - You can use the %_SHARED to store data between function calls. WHY -IS THIS A HASH, AND NOT A HASH REF? + You can use the %_SHARED to store data between function calls. </para> <para> For example: <programlisting> -CREATE OR REPLACE FUNCTION set_var(TEXT) RETURNS TEXT AS $$ - $_SHARED{first} = 'Hello, PL/Perl!'; - return 'ok'; +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() RETURNS text AS $$ - return $_SHARED{first}; +CREATE OR REPLACE FUNCTION get_var(name TEXT) RETURNS text AS $$ + return $_SHARED{$_[0]}; $$ LANGUAGE plperl; -SELECT set_var('hello plperl'); -SELECT get_var(); +SELECT set_var('sample', $q$Hello, PL/Perl! How's tricks?$q$); +SELECT get_var('sample'); </programlisting> </para> |