File tree 1 file changed +12
-10
lines changed
1 file changed +12
-10
lines changed Original file line number Diff line number Diff line change 1
1
<!--
2
- $PostgreSQL: pgsql/doc/src/sgml/plperl.sgml,v 2.26 2004/07/21 20:44:52 momjian Exp $
2
+ $PostgreSQL: pgsql/doc/src/sgml/plperl.sgml,v 2.27 2004/08/18 03:37:56 momjian Exp $
3
3
-->
4
4
5
5
<chapter id="plperl">
@@ -317,23 +317,25 @@ $$ LANGUAGE plperl;
317
317
<sect1 id="plperl-global">
318
318
<title>Global Values in PL/Perl</title>
319
319
<para>
320
- You can use the %_SHARED to store data between function calls. WHY
321
- IS THIS A HASH, AND NOT A HASH REF?
320
+ You can use the %_SHARED to store data between function calls.
322
321
</para>
323
322
<para>
324
323
For example:
325
324
<programlisting>
326
- CREATE OR REPLACE FUNCTION set_var(TEXT) RETURNS TEXT AS $$
327
- $_SHARED{first} = 'Hello, PL/Perl!';
328
- return 'ok';
325
+ CREATE OR REPLACE FUNCTION set_var(name TEXT, val TEXT) RETURNS TEXT AS $$
326
+ if ($_SHARED{$_[0]} = $_[1]) {
327
+ return 'ok';
328
+ } else {
329
+ return "Can't set shared variable $_[0] to $_[1]";
330
+ }
329
331
$$ LANGUAGE plperl;
330
332
331
- CREATE OR REPLACE FUNCTION get_var() RETURNS text AS $$
332
- return $_SHARED{first };
333
+ CREATE OR REPLACE FUNCTION get_var(name TEXT ) RETURNS text AS $$
334
+ return $_SHARED{$_[0] };
333
335
$$ LANGUAGE plperl;
334
336
335
- SELECT set_var('hello plperl' );
336
- SELECT get_var();
337
+ SELECT set_var('sample', $q$Hello, PL/Perl! How's tricks?$q$ );
338
+ SELECT get_var('sample' );
337
339
</programlisting>
338
340
339
341
</para>
You can’t perform that action at this time.
0 commit comments