Adjust some comments about structure properties in pg_stat.h
[pgsql.git] / src / pl / plperl / expected / plperl_call.out
bloba08b9ff795c64d0bac10a10625efe1ce02a5f9c0
1 CREATE PROCEDURE test_proc1()
2 LANGUAGE plperl
3 AS $$
4 undef;
5 $$;
6 CALL test_proc1();
7 CREATE PROCEDURE test_proc2()
8 LANGUAGE plperl
9 AS $$
10 return 5
11 $$;
12 CALL test_proc2();
13 CREATE TABLE test1 (a int);
14 CREATE PROCEDURE test_proc3(x int)
15 LANGUAGE plperl
16 AS $$
17 spi_exec_query("INSERT INTO test1 VALUES ($_[0])");
18 $$;
19 CALL test_proc3(55);
20 SELECT * FROM test1;
21  a  
22 ----
23  55
24 (1 row)
26 -- output arguments
27 CREATE PROCEDURE test_proc5(INOUT a text)
28 LANGUAGE plperl
29 AS $$
30 my ($a) = @_;
31 return { a => "$a+$a" };
32 $$;
33 CALL test_proc5('abc');
34     a    
35 ---------
36  abc+abc
37 (1 row)
39 CREATE PROCEDURE test_proc6(a int, INOUT b int, INOUT c int)
40 LANGUAGE plperl
41 AS $$
42 my ($a, $b, $c) = @_;
43 return { b => $b * $a, c => $c * $a };
44 $$;
45 CALL test_proc6(2, 3, 4);
46  b | c 
47 ---+---
48  6 | 8
49 (1 row)
51 -- OUT parameters
52 CREATE PROCEDURE test_proc9(IN a int, OUT b int)
53 LANGUAGE plperl
54 AS $$
55 my ($a, $b) = @_;
56 elog(NOTICE, "a: $a, b: $b");
57 return { b => $a * 2 };
58 $$;
59 DO $$
60 DECLARE _a int; _b int;
61 BEGIN
62   _a := 10; _b := 30;
63   CALL test_proc9(_a, _b);
64   RAISE NOTICE '_a: %, _b: %', _a, _b;
65 END
66 $$;
67 NOTICE:  a: 10, b: 
68 NOTICE:  _a: 10, _b: 20
69 DROP PROCEDURE test_proc1;
70 DROP PROCEDURE test_proc2;
71 DROP PROCEDURE test_proc3;
72 DROP TABLE test1;