Re: How to add function schema in search_path in option definitio

From: "Peter J(dot) Holzer" <hjp-pgsql(at)hjp(dot)at>
To: pgsql-general(at)lists(dot)postgresql(dot)org
Subject: Re: How to add function schema in search_path in option definitio
Date: 2023-07-09 11:01:49
Message-ID: 20230709110149.hdjv6vhukz2sz3c6@hjp.at
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 2023-07-08 19:00:02 +0200, Lorusso Domenico wrote:
> I've created a schema to handle some specific features.
> In the schema there are a couple of tables used by many functions (more than
> 20).
> In other words, I've created a schema as a package (as suggested in many
> points).

So this is one specific schema with a specific name and you don't need
this to work in any schema the function happens to be created in?

Then I think setting the search path as part of the function definition
(as already hinted at by Adrian) may be the easiest solution:

create function my_schema.foo (...)
returns ...
set search_path to my_schema, public
as $$
...
$$;

You could also do something like:

set search_path to my_schema, public;
create function foo (...)
returns ...
set search_path from current
as $$
...
$$;

hp

--
_ | Peter J. Holzer | Story must make more sense than reality.
|_|_) | |
| | | hjp(at)hjp(dot)at | -- Charles Stross, "Creative writing
__/ | http://www.hjp.at/ | challenge!"

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message jian he 2023-07-09 12:13:13 now() literal in pg_input_is_valid
Previous Message Alvaro Herrera 2023-07-09 10:59:31 Re: [Beginner Question]What's the use of ResTarget?