Neil Conway <nconway@klamath.dyndns.org> writes:
> POSTGRES backend interactive interface
> $Revision: 1.260 $ $Date: 2002/03/24 04:31:07 $
> backend> create table foo (c1 int);
> ERROR: invalid relation "foo"; system catalog modifications are currently disallowed
> backend> create schema x;
> backend> create table x.bar (c1 int);
> backend>
> Is this the expected behavior?
It is at the moment but I'm planning to change it. Currently, a
standalone backend defaults to pg_catalog being the target creation
namespace, which is needed by initdb; but I was planning to make initdb
explicitly set the search_path to pg_catalog, because it seems like a
bad idea for pg_catalog to ever be the default target.
In the meantime, try an explicitset search_path = 'public';
then "create table foo" would create public.foo which will be allowed.
regards, tom lane