Discussion:
Database schemas: search_path
(too old to reply)
Igor Maciel Macaubas
2004-10-14 12:42:45 UTC
Permalink
Hi all,

I've organized my database design in multiple schemas, and migrated my existing tables to different schemas by using a simple how-to I found in this list history.
But what I couldn't find was a way to make this schemata fully transparent to my application - which does selects directly to tables instead to schema.table. I know that I can always set the search_path environmnet variable, but I have to do it on each session. I'd like to know if there is a way to make my set search_path persistent on the database, no matter the session.
I believe that this is supported, but couldn't find out how to make it. Can someone help me?

Having to add the 'set search_path = xxx,yyyy,zzzzz' everytime I connect is pain for me and my application.

Another question I have is:
Let's say I have a simple database with 100 tables, divided in 10 schemas with 10 tables in each. Let's say that my last schema is 10th_schema and my last table is z_table (last by creation - is the most recent created table, so I assume it's the last table on the database). My search_path is ascending from the 1st_schema to the 10th_schema.
Would my querie times/performance on table z_table be faster if this table was created on the 1st_schema ?
How does postgres make this search on the search_path to find where a table is in?

Thanks for your help, cya!

Regards,
Igor
--
***@providerst.com.br
Bruno Wolff III
2004-10-14 14:34:32 UTC
Permalink
On Thu, Oct 14, 2004 at 09:42:45 -0300,
Post by Igor Maciel Macaubas
Hi all,
I've organized my database design in multiple schemas, and migrated my existing tables to different schemas by using a simple how-to I found in this list history.
But what I couldn't find was a way to make this schemata fully transparent to my application - which does selects directly to tables instead to schema.table. I know that I can always set the search_path environmnet variable, but I have to do it on each session. I'd like to know if there is a way to make my set search_path persistent on the database, no matter the session.
I believe that this is supported, but couldn't find out how to make it. Can someone help me?
Use ALTER DATABASE to set per database defaults.

---------------------------(end of broadcast)---------------------------
TIP 3: if posting/reading through Usenet, please send an appropriate
subscribe-nomail command to ***@postgresql.org so that your
message can get through to the mailing list cleanly
Jaime Casanova
2004-10-14 16:19:46 UTC
Permalink
Post by Bruno Wolff III
On Thu, Oct 14, 2004 at 09:42:45 -0300,
Post by Igor Maciel Macaubas
Hi all,
I've organized my database design in multiple
schemas, and migrated my existing tables to
different schemas by using a simple how-to I found
in this list history.
Post by Igor Maciel Macaubas
But what I couldn't find was a way to make this
schemata fully transparent to my application - which
does selects directly to tables instead to
schema.table. I know that I can always set the
search_path environmnet variable, but I have to do
it on each session. I'd like to know if there is a
way to make my set search_path persistent on the
database, no matter the session.
Post by Igor Maciel Macaubas
I believe that this is supported, but couldn't
find out how to make it. Can someone help me?
Use ALTER DATABASE to set per database defaults.
Hi,
set the parameter in the postgresql.conf

Regards,
Jaime Casanova

_________________________________________________________
Do You Yahoo!?
Información de Estados Unidos y América Latina, en Yahoo! Noticias.
Visítanos en http://noticias.espanol.yahoo.com

---------------------------(end of broadcast)---------------------------
TIP 6: Have you searched our list archives?

http://archives.postgresql.org
Igor Maciel Macaubas
2004-10-14 18:32:33 UTC
Permalink
Hi,

Thanks, I did it using alter database and worked fine.
Thanks for all!

Regards,
Igor
--
***@providerst.com.br

----- Original Message -----
From: "Jaime Casanova" <***@yahoo.com>
To: <pgsql-***@postgresql.org>
Sent: Thursday, October 14, 2004 1:19 PM
Subject: Re: [ADMIN] Database schemas: search_path
Post by Jaime Casanova
Post by Bruno Wolff III
On Thu, Oct 14, 2004 at 09:42:45 -0300,
Post by Igor Maciel Macaubas
Hi all,
I've organized my database design in multiple
schemas, and migrated my existing tables to
different schemas by using a simple how-to I found
in this list history.
Post by Igor Maciel Macaubas
But what I couldn't find was a way to make this
schemata fully transparent to my application - which
does selects directly to tables instead to
schema.table. I know that I can always set the
search_path environmnet variable, but I have to do
it on each session. I'd like to know if there is a
way to make my set search_path persistent on the
database, no matter the session.
Post by Igor Maciel Macaubas
I believe that this is supported, but couldn't
find out how to make it. Can someone help me?
Use ALTER DATABASE to set per database defaults.
Hi,
set the parameter in the postgresql.conf
Regards,
Jaime Casanova
_________________________________________________________
Do You Yahoo!?
Información de Estados Unidos y América Latina, en Yahoo! Noticias.
Visítanos en http://noticias.espanol.yahoo.com
---------------------------(end of broadcast)---------------------------
TIP 6: Have you searched our list archives?
http://archives.postgresql.org
---------------------------(end of broadcast)---------------------------
TIP 9: the planner will ignore your desire to choose an index scan if your
joining column's datatypes do not match

Loading...