Consistently use "superuser" instead of "super user"
[pgsql.git] / src / pl / plpython / expected / plpython_call.out
blob55e1027246a26e836a5f0cc5cc0b8e6069a6b8d0
1 --
2 -- Tests for procedures / CALL syntax
3 --
4 CREATE PROCEDURE test_proc1()
5 LANGUAGE plpythonu
6 AS $$
7 pass
8 $$;
9 CALL test_proc1();
10 -- error: can't return non-None
11 CREATE PROCEDURE test_proc2()
12 LANGUAGE plpythonu
13 AS $$
14 return 5
15 $$;
16 CALL test_proc2();
17 ERROR:  PL/Python procedure did not return None
18 CONTEXT:  PL/Python procedure "test_proc2"
19 CREATE TABLE test1 (a int);
20 CREATE PROCEDURE test_proc3(x int)
21 LANGUAGE plpythonu
22 AS $$
23 plpy.execute("INSERT INTO test1 VALUES (%s)" % x)
24 $$;
25 CALL test_proc3(55);
26 SELECT * FROM test1;
27  a  
28 ----
29  55
30 (1 row)
32 -- output arguments
33 CREATE PROCEDURE test_proc5(INOUT a text)
34 LANGUAGE plpythonu
35 AS $$
36 return [a + '+' + a]
37 $$;
38 CALL test_proc5('abc');
39     a    
40 ---------
41  abc+abc
42 (1 row)
44 CREATE PROCEDURE test_proc6(a int, INOUT b int, INOUT c int)
45 LANGUAGE plpythonu
46 AS $$
47 return (b * a, c * a)
48 $$;
49 CALL test_proc6(2, 3, 4);
50  b | c 
51 ---+---
52  6 | 8
53 (1 row)
55 -- OUT parameters
56 CREATE PROCEDURE test_proc9(IN a int, OUT b int)
57 LANGUAGE plpythonu
58 AS $$
59 plpy.notice("a: %s" % (a))
60 return (a * 2,)
61 $$;
62 DO $$
63 DECLARE _a int; _b int;
64 BEGIN
65   _a := 10; _b := 30;
66   CALL test_proc9(_a, _b);
67   RAISE NOTICE '_a: %, _b: %', _a, _b;
68 END
69 $$;
70 NOTICE:  a: 10
71 NOTICE:  _a: 10, _b: 20
72 DROP PROCEDURE test_proc1;
73 DROP PROCEDURE test_proc2;
74 DROP PROCEDURE test_proc3;
75 DROP TABLE test1;