I've been using PostgreSQL 7.3.2.
What, if any, way is there to share a context (global rowtype variable)
between plpgsql functions ?
Can row types be passed as parameters ? (I seem to have had trouble
doing that)
e.g.
A transaction that looks like:
BEGIN;
select FindContext(5432);
select SomeRandomFunction('111');
COMMIT;
The functions would look somthing like:
CREATE or replace FUNCTION FindContext(int4) RETURNS int4 AS
'
DECLARE
w_key alias for $1;
w_context context%ROWTYPE;
BEGIN
SELECT INTO w_context * FROM contecxt WHERE key = w_key;
-- I want to access w_context in a different method
RETURN 1;
END;
'
LANGUAGE 'plpgsql';
CREATE or replace FUNCTION SomeRandomFunction(int4) RETURNS int4 AS
'
DECLARE
w_stuff alias for $1;
w_context context%ROWTYPE; -- ??????????????
BEGIN
update sometable set key = w_context.key where yadda = w_stuff;
RETURN 1;
END;
'
LANGUAGE 'plpgsql';