Re: connecting /sharing tables across databases - Mailing list pgsql-novice

From Sean Davis
Subject Re: connecting /sharing tables across databases
Date
Msg-id 264855a00811191046j2ca029bbv704c57c63407c664@mail.gmail.com
Whole thread Raw
In response to Re: connecting /sharing tables across databases  (Mark Wimer <mwimer@usgs.gov>)
Responses Re: connecting /sharing tables across databases
List pgsql-novice


On Wed, Nov 19, 2008 at 1:17 PM, Mark Wimer <mwimer@usgs.gov> wrote:

In MSSQL, I have a dozen or so databases that rely on some shared tables (states, species lists, for example). I put the shared tables in a db called Common. To query them, mssql allows:

select statename, stateabbrev from common.dbo.statelist S inner join mytable on S.stateabbrev = mytable.stateabbrev

I'm not asking for PostgreSQL to be more like mssql, but I would like to share some lookup tables among applications & databases. In looking through the help, it appears from the "Schemas" help page (http://www.postgresql.org/docs/8.3/static/ddl-schemas.html) that PostgreSQL uses a single database per connection (pgAdmin client, web client). Is there a best practice or recommendation page for how to handle this sharing of a common lookup table? Or a help page I missed that discusses it?

Right now I see my options as:
a) put all applications for which I use PostgreSQL into one database, but different schemas.

The standard solution is (a). 
 

b) use a client tool to make a separate connection and create a join afterwards

Postgres has other options.  You can look at the dblink contrib module to connect between postgres databases on the same server.  Also, a project (perl-based) called DBI-Link allows you to query from other databases (mysql, mssql, etc.) directly from within postgresql. 

If you have total control of the database, though, I would say stick with (a).

Sean


pgsql-novice by date:

Previous
From: Mark Wimer
Date:
Subject: Re: connecting /sharing tables across databases
Next
From: Mark Wimer
Date:
Subject: Re: connecting /sharing tables across databases