Search Postgresql Archives

Re: Unexpected behavior from psql

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On Jan 11, 2009, at 4:41 PM, Jeff Davis wrote:

On Sun, 2009-01-11 at 15:33 -0600, Tim Hart wrote:
tjhart=# set search_path to foo, public;
SET
tjhart=# \d
          List of relations
 Schema |   Name    | Type  | Owner
--------+-----------+-------+--------
 foo    | bar_table | table | tjhart
 foo    | foo_table | table | tjhart
(2 rows)

tjhart=# set search_path to public, foo;
SET
tjhart=# \d
          List of relations
 Schema |   Name    | Type  | Owner
--------+-----------+-------+--------
 foo    | bar_table | table | tjhart
 public | foo_table | table | tjhart
(2 rows)

This behavior seems consistent to me. If you type an unqualified name
like:

SELECT * FROM foo_table;

You'll get the one from the first namespace listed in search_path. It
makes sense for "\d" to display only the tables that can be seen without
specifying a fully-qualified name.

Regards,
	Jeff Davis


Would it be worthwhile to specify this in the documentation? One of the sources of my confusion was the following statement:

http://www.postgresql.org/docs/8.3/interactive/app-psql.html:

\distvS
"... to obtain a listing of all the matching objects..."

I fully understand that 'foo' would need to be qualified when used in sql, pl/pgsql, etc.

I understood the documentation to read that all tables, views, and sequences in the search path would be listed, not just those unobscured.

Tim


--
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux