Re: are there static variables in pgsql?

From: Kenneth Downs <ken(at)secdat(dot)com>
To: Patrick TJ McPhee <ptjm(at)interlog(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: are there static variables in pgsql?
Date: 2006-06-12 15:08:31
Message-ID: 448D836F.3040004@secdat.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Patrick TJ McPhee wrote:

>I'm not sure a static variable is the right way to achieve this, but
>you could use a custom_variable_class for this. Add this to your
>postgresql.conf:
> custom_variable_classes='global'
>
>Then you can set and show variables prefixed by global.:
> set global.success = 'true';
>
>
>
This is very intriguing, but I'd like to make sure it is doing what I
think it is doing. Is it tracking variables in a connection across SQL
commands? If so, shouldn't this work (Assume the existence of table
"detail" with a column called "val2").

create or replace function SetVal2() returns void as
$$
begin
update detail set val2=global.val2;
end;
$$
language plpgsql

set global.val2=5;
select SetVal2();

I'm getting the following error which I don't understand. Seems I don't
know how to access the variable once it is set.

ERROR: missing FROM-clause entry for table "global"
CONTEXT: SQL statement "update detail set val2=global.val2"
PL/pgSQL function "setval2" line 2 at SQL statement

Attachment Content-Type Size
ken.vcf text/x-vcard 186 bytes

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Lincoln Yeoh 2006-06-12 15:13:54 Re: Disk corruption detection
Previous Message gl 2006-06-12 13:38:11 pg_dump: missing pg_database entry