As far as schemas in Postgres go, a normal way to handle them is to create
schema-specific users with an appropriately-set default schema, e.g.
something like:
  CREATE SCHEMA company_a ;
  CREATE USER company_a_user PASSWORD 'foo' ;
  ALTER USER company_a_user SET search_path TO company_a, public ;
  GRANT USAGE ON SCHEMA company_a TO company_a_user ;
  --  ...or (I think) GRANT ALL PRIVILEGES ON SCHEMA company_a TO
company_a_user


On Fri, Jan 16, 2009 at 3:28 PM, Rusty Wright <rusty.wri...@gmail.com>wrote:

> That may be true about the public schema being used when one isn't
> specified.  But when I use their pgAdmin gui tool and open the query window
> and try to run the tiger sample from the Jailer tutorial it blows up on the
> table creates, saying:
>
>  ERROR:  no schema has been selected to create in
>
>  ********** Error **********
>
>  ERROR: no schema has been selected to create in
>  SQL state: 3F000
>
> I wonder if iBatis is adding the public schema automatically for you?  Or
> maybe when I set up my db account I didn't do something I should have?  Or I
> changed something and don't remember.
>
> And you've prompted me to remember another reason why I thought schemas are
> required.
>
> When our DBA set up PostgreSQL he didn't do much tweaking and the public
> schema had odd permissions; if I remember correctly it allowed me to create
> tables in the databases of other users in their public schema.  I didn't try
> dropping their tables in their public schema but it may have allowed that as
> well.
>
> On my test db the sql for the public schema is
>
> CREATE SCHEMA public
>  AUTHORIZATION postgres;
> GRANT ALL ON SCHEMA public TO postgres;
> COMMENT ON SCHEMA public IS 'Standard public schema';
>
> Just after I installed postgres it had another grant line which I think was
> (or similar to) "GRANT ALL ON SCHEMA public TO public;" which I deleted (and
> in my usual boneheaded fashion, forgot to document my change, but it's my
> personal test database).
>
>
>
> Ingmar Lötzsch wrote:
>
>> Some comments (and answers to Christopher and Rusty) on PostgreSQL:
>>
>> ...
>>
>> This isn't true. You can (and perhaps should) always omit the schema.
>> The default schema "public" is used in this case. You can execute
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: users-h...@tomcat.apache.org
>
>

Reply via email to