Note:
test=# super user postgres
test=> regular user robot
### comments

test=#create schema t AUTHORIZATION robot;
CREATE SCHEMA
test=> select * from pg_namespace ;
  nspname   | nspowner | nspacl 
------------+----------+--------
 pg_catalog |        1 | {=U}
 pg_toast   |        1 | {=}
 public     |        1 | {=UC}
 pg_temp_1  |        1 | 
 t          |     1045 | 

test=> create table foo(test text);
CREATE TABLE
test=> \dt
       List of relations
 Schema | Name | Type  | Owner 
--------+------+-------+-------
 public | foo  | table | robot
test=> create table t.foo(test text);
CREATE TABLE
test=> \dt
       List of relations
 Schema | Name | Type  | Owner 
--------+------+-------+-------
 public | foo  | table | robot
(1 row)
####I expect to see something like:
       List of relations
 Schema | Name | Type  | Owner
--------+------+-------+-------
 public | foo  | table | robot
 t      | foo  | table | robot

test=> insert into foo values('zzzz');
INSERT 19868125 1
test=> insert into t.foo values('sssss');
INSERT 19868126 1
test=> select * from foo;
 test 
------
 zzzz
(1 row)


test=# create schema robot AUTHORIZATION robot;
CREATE SCHEMA
test=> select * from pg_namespace ;
  nspname   | nspowner | nspacl 
------------+----------+--------
 pg_catalog |        1 | {=U}
 pg_toast   |        1 | {=}
 public     |        1 | {=UC}
 pg_temp_1  |        1 | 
 t          |     1045 | 
 robot      |     1045 | 
(6 rows)

test=> create table robot.foo(test text);
CREATE TABLE
test=> \dt
       List of relations
 Schema | Name | Type  | Owner 
--------+------+-------+-------
 robot  | foo  | table | robot
(1 row)

####I expect to see something like:
       List of relations
 Schema | Name | Type  | Owner
--------+------+-------+-------
 public | foo  | table | robot
 t      | foo  | table | robot
 robot  | foo  | table | robot
#### why it's not?
test=> insert into robot.foo values('xxxxx');
INSERT 19868173 1
test=> select * from foo;
 test  
-------
 xxxxx
(1 row)
#### why schema t,robot behave different???
#### it seems if schema name is same as username then 
#### it will shadow the objects in the public schema that have same name.
#### I haven't documentation address this yet.

Jie Liang 
Software Engineer 
St. Bernard Software 
16882 W. Bernardo Dr. 
San Diego, CA 92127 
Tel: 858-524-2134 
Fax:858-676-2228 
[EMAIL PROTECTED] 

---------------------------(end of broadcast)---------------------------
TIP 5: Have you checked our extensive FAQ?

http://www.postgresql.org/users-lounge/docs/faq.html

Reply via email to