Re: Schema Names

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: Schema Names
Дата
Msg-id 14368.1154148527@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Schema Names  ("Derrick Betts" <derrick@blueaxis.com>)
Список pgsql-novice
"Derrick Betts" <derrick@blueaxis.com> writes:
> However, if I create a new schema, it would seem that the only way to =
> access a table within the new schema is to pre-pend the table name with =
> the schema name:
>     CREATE SCHEMA new_schema;
>         CREATE TABLE new_table (column_name varchar);

>     SET search_path TO new_schema;
>     SELECT column_name FROM new_table;  This returns an error saying =
> there is no such table as new_table.

That's because you created new_table in the public schema.  I think you
are confusing

    CREATE SCHEMA new_schema;
    CREATE TABLE new_table (column_name varchar);

(two independent commands, and the second one creates new_table in whatever
schema is current according to search_path) with

    CREATE SCHEMA new_schema
        CREATE TABLE new_table (column_name varchar);

which per SQL spec makes new_schema and then creates new_table within
it.  That semicolon makes a lot of difference...

            regards, tom lane

В списке pgsql-novice по дате отправления:

Предыдущее
От: "Derrick Betts"
Дата:
Сообщение: Re: Schema Names
Следующее
От: Kaloyan Iliev
Дата:
Сообщение: Re: Tables Locks Quetion or Strictlly subsequent numbers