Re: BUG #2542: ALTER USER foo SET bar = func(baz) errors out - Mailing list pgsql-bugs

From David Fetter
Subject Re: BUG #2542: ALTER USER foo SET bar = func(baz) errors out
Date
Msg-id 20060721030800.GC4097@fetter.org
Whole thread Raw
In response to Re: BUG #2542: ALTER USER foo SET bar = func(baz) errors out  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-bugs
On Thu, Jul 20, 2006 at 10:46:27PM -0400, Tom Lane wrote:
> "David Fetter" <david@fetter.org> writes:
> > is there some way to let the right hand side of SET be the (TEXT)
> > output of a function?
>
> No.  SET is a utility command and utility commands generally don't
> do expression evaluation.  (There are some specific reasons why not
> for SET, but I won't get into that here.)
>
> However, you can get the desired effect in various other ways; see
> the set_config() function, or try updating the pg_settings view ...

foo=> UPDATE pg_catalog.pg_settings SET setting = 'bar,' || setting
WHERE "name"='search_path';
-[ RECORD 1 ]----------------
set_config | bar,$user,public

That's a neat trick :)

However:

psql foo foo
foo=> SHOW search_path ;
 search_path
--------------
 $user,public
(1 row)

How do I make it permanent?

Cheers,
D
--
David Fetter <david@fetter.org> http://fetter.org/
phone: +1 415 235 3778        AIM: dfetter666
                              Skype: davidfetter

Remember to vote!

pgsql-bugs by date:

Previous
From: Tom Lane
Date:
Subject: Re: BUG #2542: ALTER USER foo SET bar = func(baz) errors out
Next
From: "Alaa El Gohary"
Date:
Subject: BUG #2543: Performance delay acrros the same day