13
13
example:
14
14
</para>
15
15
<programlisting>
16
- SELECT pgv_set_int('vars', 'int1', 101);
16
+ postgres=# SELECT pgv_set_int('vars', 'int1', 101);
17
17
BEGIN;
18
- SELECT pgv_set_int('vars', 'int2', 102);
18
+ postgres=# SELECT pgv_set_int('vars', 'int2', 102);
19
19
ROLLBACK;
20
20
21
- SELECT * FROM pgv_list() order by package, name;
21
+ postgres=# SELECT * FROM pgv_list() ORDER BY package, name;
22
22
package | name
23
23
---------+------
24
24
vars | int1
@@ -27,8 +27,21 @@ SELECT * FROM pgv_list() order by package, name;
27
27
</programlisting>
28
28
</sect2>
29
29
30
+ <sect2>
31
+ <title>Installation</title>
32
+ <para>
33
+ The <filename>pg_variables</filename> extension is included into
34
+ &productname;. Once you have &productname; installed, you must
35
+ execute the <xref linkend="sql-createextension"> command to enable
36
+ <filename>pg_variables</filename>, as follows:
37
+ <programlisting>
38
+ CREATE EXTENSION pg_variables;
39
+ </programlisting>
40
+ </para>
41
+ </sect2>
42
+
30
43
<sect2 id="pg-variables-functions">
31
- <title>Module functions </title>
44
+ <title>Functions </title>
32
45
33
46
<para>
34
47
The functions provided by the <filename>pg_variables</filename> module are
@@ -47,7 +60,7 @@ SELECT * FROM pgv_list() order by package, name;
47
60
</para>
48
61
49
62
<programlisting>
50
- SELECT pgv_get_int('vars', 'int1');
63
+ postgres=# SELECT pgv_get_int('vars', 'int1');
51
64
ERROR: unrecognized package "vars"
52
65
</programlisting>
53
66
@@ -56,7 +69,7 @@ ERROR: unrecognized package "vars"
56
69
</para>
57
70
58
71
<programlisting>
59
- SELECT pgv_get_int('vars', 'int1');
72
+ postgres=# SELECT pgv_get_int('vars', 'int1');
60
73
ERROR: unrecognized variable "int1"
61
74
</programlisting>
62
75
@@ -66,7 +79,7 @@ ERROR: unrecognized variable "int1"
66
79
</para>
67
80
68
81
<programlisting>
69
- SELECT pgv_get_text('vars', 'int1');
82
+ postgres=# SELECT pgv_get_text('vars', 'int1');
70
83
ERROR: variable "int1" requires "integer" value
71
84
</programlisting>
72
85
@@ -537,16 +550,16 @@ ERROR: variable "int1" requires "integer" value
537
550
It is easy to use functions to work with scalar variables:
538
551
</para>
539
552
<programlisting>
540
- SELECT pgv_set_int('vars', 'int1', 101);
541
- SELECT pgv_set_int('vars', 'int2', 102);
553
+ postgres=# SELECT pgv_set_int('vars', 'int1', 101);
554
+ postgres=# SELECT pgv_set_int('vars', 'int2', 102);
542
555
543
- SELECT pgv_get_int('vars', 'int1');
556
+ postgres=# SELECT pgv_get_int('vars', 'int1');
544
557
pgv_get_int
545
558
-------------
546
559
101
547
560
(1 row)
548
561
549
- SELECT pgv_get_int('vars', 'int2');
562
+ postgres=# SELECT pgv_get_int('vars', 'int2');
550
563
pgv_get_int
551
564
-------------
552
565
102
@@ -563,37 +576,37 @@ INSERT INTO tab VALUES (0, 'str00'), (1, 'str11');
563
576
Then you can use functions to work with record variables:
564
577
</para>
565
578
<programlisting>
566
- SELECT pgv_insert('vars', 'r1', tab) FROM tab;
579
+ postgres=# SELECT pgv_insert('vars', 'r1', tab) FROM tab;
567
580
568
- SELECT pgv_select('vars', 'r1');
581
+ postgres=# SELECT pgv_select('vars', 'r1');
569
582
pgv_select
570
583
------------
571
584
(1,str11)
572
585
(0,str00)
573
586
(2 rows)
574
587
575
- SELECT pgv_select('vars', 'r1', 1);
588
+ postgres=# pgv_select('vars', 'r1', 1);
576
589
pgv_select
577
590
------------
578
591
(1,str11)
579
592
(1 row)
580
593
581
- SELECT pgv_select('vars', 'r1', 0);
594
+ postgres=# SELECT pgv_select('vars', 'r1', 0);
582
595
pgv_select
583
596
------------
584
597
(0,str00)
585
598
(1 row)
586
599
587
- SELECT pgv_select('vars', 'r1', ARRAY[1, 0]);
600
+ postgres=# SELECT pgv_select('vars', 'r1', ARRAY[1, 0]);
588
601
pgv_select
589
602
------------
590
603
(1,str11)
591
604
(0,str00)
592
605
(2 rows)
593
606
594
- SELECT pgv_delete('vars', 'r1', 1);
607
+ postgres=# SELECT pgv_delete('vars', 'r1', 1);
595
608
596
- SELECT pgv_select('vars', 'r1');
609
+ postgres=# SELECT pgv_select('vars', 'r1');
597
610
pgv_select
598
611
------------
599
612
(0,str00)
@@ -603,7 +616,7 @@ SELECT pgv_select('vars', 'r1');
603
616
You can list packages and variables:
604
617
</para>
605
618
<programlisting>
606
- SELECT * FROM pgv_list() order by package, name;
619
+ postgres=# SELECT * FROM pgv_list() ORDER BY package, name;
607
620
package | name
608
621
---------+------
609
622
vars | int1
@@ -615,7 +628,7 @@ SELECT * FROM pgv_list() order by package, name;
615
628
And get used memory in bytes:
616
629
</para>
617
630
<programlisting>
618
- SELECT * FROM pgv_stats() order by package;
631
+ postgres=# SELECT * FROM pgv_stats() ORDER BY package;
619
632
package | used_memory
620
633
---------+-------------
621
634
vars | 16736
@@ -625,14 +638,14 @@ SELECT * FROM pgv_stats() order by package;
625
638
You can delete variables or whole packages:
626
639
</para>
627
640
<programlisting>
628
- SELECT pgv_remove('vars', 'int1');
629
- SELECT pgv_remove('vars');
641
+ postgres=# SELECT pgv_remove('vars', 'int1');
642
+ postgres=# SELECT pgv_remove('vars');
630
643
</programlisting>
631
644
<para>
632
645
You can delete all packages and variables:
633
646
</para>
634
647
<programlisting>
635
- SELECT pgv_free();
648
+ postgres=# SELECT pgv_free();
636
649
</programlisting>
637
650
</sect2>
638
651
</sect1>
0 commit comments