The following bug has been logged online: Bug reference: 1661 Logged by: Pavel Krupets Email address: [EMAIL PROTECTED] PostgreSQL version: 8.0.2 Operating system: Windows XP Description: JDBC DatabaseMetaData.getExportedKeys() returns invalid keys. Details:
Hello, I have two tables: CREATE TABLE bc4jgen_test_04.table_03 ( id NUMBER(10) NOT NULL, code1 NUMBER(10) NOT NULL, code2 NUMBER(20) NOT NULL, name varchar(25) NOT NULL, CONSTRAINT pk_table_03 PRIMARY KEY (id), CONSTRAINT uq_codes UNIQUE (code1, code2) ); and CREATE TABLE bc4jgen_test_04.table_05 ( id NUMBER(10) NOT NULL, code1 NUMBER(10) NOT NULL, code2 NUMBER(20) NOT NULL, name varchar(25) NOT NULL, code3 NUMBER(5) NOT NULL, CONSTRAINT pk_table_05 PRIMARY KEY (id), CONSTRAINT fk_table_05_2_table_03 FOREIGN KEY (code1, code2) REFERENCES bc4jgen_test_04.table_03 (code1, code2), CONSTRAINT uq_table_05 UNIQUE (code1, code2, code3) ); If I ask getExportedKeys(null, "bc4jgen_test_04", "table_03") to return exported foreign keys it will return 'fk_table_05_2_table_03' key. But this key isn't exported. table_05 does not references table_03's primary key, just a unique one! Please check javadocs excerpts below. --------------------------------------------------------- JavaDocs: ResultSet getExportedKeys(String catalog, String schema, String table) Retrieves a description of the foreign key columns that reference the given table's primary key columns (the foreign keys exported by a table) --------------------------------------------------------- Thank you. ---------------------------(end of broadcast)--------------------------- TIP 8: explain analyze is your friend