Kris,
Thank you for your reply!
The problem is that where I write in my code, say:
"SELECT * FROM mytable"
the backend log contains:
"SELECT * FROM myusername.mytable"
Someone along the way (I suspect the JDBC driver, but I am not sure)
"qualifies" my database objects. Probably that is why the "public"
schema is not searched for "mytable".
Are there cases/configurations where the JDBC driver prepends the
username to the object name? Is it possible to prevent this from happening?
Thank you!
Peter
Kris Jurka wrote:
>
> On Tue, 1 Feb 2005, [ISO-8859-1] Kovács Péter wrote:
>
>
>>Hi there,
>>
>>I am not sure if this a general or jdbc question. (I am connecting to
>>pgsql via jdbc.) I have postmaster (PostgreSQL) 7.4.5. It looks like the
>>name of primary schema of the user (actually their username) is
>>prepended to database objects so the "search_path" is not considered any
>>more.
>
>
> By default the search_path has the schema of your username included in it
> with the special $user variable:
>
> jurka=# show search_path;
> search_path
> --------------
> $user,public
> (1 row)
>
>
>
>>(I got my stuff in the "public" schema, so I do not find them as
>>user 'x'.) How can I tell the jdbc driver not to use schema-qualified
>>object names?
>>
>
>
> This should still search the public schema if an identically named object
> is not found in your user schema. It is unclear from your report exactly
> what your search_path setting is, what tables are where, and what query is
> not finding them correctly. If your search_path is not set correctly you
> may set this globally (postgresql.conf) or per user/database or per
> connection to match your needs.
>
> Kris Jurka
>