Hi list,
I can reproduce this error - could it be added as an
official bug, please?
I wish to create a foreign key on a table, referencing a
table in a schema that has the same name as my user id (my
personal schema). In the list of tables when adding the
foreign key ('References'), tables in my personal schema are
listed by table name, without the schema part. When choosing
such a table, the column list is empty.
The tables in my personal schema are in the search path, but
the column list apparently does not take that in account ?
regards, Sune B. Woeller
Miha Radej wrote:
hi!
the foreign key problem seems to come from using an incorrect schema
name. ie. in a database i am using i have a few schemas. i am working on
one of them and when selecting a referencing table all table names are
displayed as 'schema.tablename' except the tables from the current
schema i'm working on, where just the form 'tablename' is used. and
pgadmin3 appears to use the public schema if no schema seems to be
specified, which then returns no columns.
ie: i am working on a schema called 'myschema' and i select a table
'tablename' as a referenced table. pgadmin generates the following query
to retrieve the column names from a newly selected table:
SELECT attname
FROM pg_attribute att, pg_class cl, pg_namespace nsp
WHERE attrelid=cl.oid AND relnamespace=nsp.oid
AND nspname='public'
AND relname='tablename'
AND attnum > 0
ORDER BY attnum
instead of
SELECT attname
FROM pg_attribute att, pg_class cl, pg_namespace nsp
WHERE attrelid=cl.oid AND relnamespace=nsp.oid
AND nspname='myschema'
AND relname='tablename'
AND attnum > 0
ORDER BY attnum
regards,
Miha
---------------------------(end of broadcast)---------------------------
TIP 6: explain analyze is your friend
---------------------------(end of broadcast)---------------------------
TIP 3: Have you checked our extensive FAQ?
http://www.postgresql.org/docs/faq