JDBC Driver Database Meta Data - FK_NAME - Mailing list pgsql-patches
From | Kris Jurka |
---|---|
Subject | JDBC Driver Database Meta Data - FK_NAME |
Date | |
Msg-id | 3D7D0239.2040700@ejurka.com Whole thread Raw |
List | pgsql-patches |
For the FK_NAME field in various DatabaseMetaData methods that rely on getImportedExportedKeys use the actual constraint name (tgconstrname) not the trigger arguments (tgargs). Update the DatabaseMetaDataTest because 7.3 returns $n instead of <unnamed> for unnamed constraints. Also add a missing drop table in UpdateableResultTest. Kris Jurka Index: src/interfaces/jdbc/org/postgresql/test/jdbc2/DatabaseMetaDataTest.java =================================================================== RCS file: /projects/cvsroot/pgsql-server/src/interfaces/jdbc/org/postgresql/test/jdbc2/DatabaseMetaDataTest.java,v retrieving revision 1.13 diff -c -r1.13 DatabaseMetaDataTest.java *** src/interfaces/jdbc/org/postgresql/test/jdbc2/DatabaseMetaDataTest.java 2002/09/06 21:23:06 1.13 --- src/interfaces/jdbc/org/postgresql/test/jdbc2/DatabaseMetaDataTest.java 2002/09/09 20:05:19 *************** *** 264,270 **** assertTrue( fkColumnName.equals( "m" ) || fkColumnName.equals( "n" ) ) ; String fkName = rs.getString( "FK_NAME" ); ! assertTrue( fkName.equals( "<unnamed>") ); String pkName = rs.getString( "PK_NAME" ); assertTrue( pkName.equals("vv_pkey") ); --- 264,274 ---- assertTrue( fkColumnName.equals( "m" ) || fkColumnName.equals( "n" ) ) ; String fkName = rs.getString( "FK_NAME" ); ! if (((org.postgresql.jdbc1.AbstractJdbc1Connection)con1).haveMinimumServerVersion("7.3")) { ! assertTrue(fkName.equals("$1")); ! } else { ! assertTrue( fkName.equals( "<unnamed>") ); ! } String pkName = rs.getString( "PK_NAME" ); assertTrue( pkName.equals("vv_pkey") ); Index: src/interfaces/jdbc/org/postgresql/test/jdbc2/UpdateableResultTest.java =================================================================== RCS file: /projects/cvsroot/pgsql-server/src/interfaces/jdbc/org/postgresql/test/jdbc2/UpdateableResultTest.java,v retrieving revision 1.6 diff -c -r1.6 UpdateableResultTest.java *** src/interfaces/jdbc/org/postgresql/test/jdbc2/UpdateableResultTest.java 2002/09/06 21:23:06 1.6 --- src/interfaces/jdbc/org/postgresql/test/jdbc2/UpdateableResultTest.java 2002/09/09 20:05:19 *************** *** 124,129 **** --- 124,130 ---- st.close(); TestUtil.dropTable( con, "updateable" ); + TestUtil.dropTable( con, "second" ); TestUtil.closeDB( con ); } catch (Exception ex) Index: src/interfaces/jdbc/org/postgresql/jdbc1/AbstractJdbc1DatabaseMetaData.java =================================================================== RCS file: /projects/cvsroot/pgsql-server/src/interfaces/jdbc/org/postgresql/jdbc1/AbstractJdbc1DatabaseMetaData.java,v retrieving revision 1.5 diff -c -r1.5 AbstractJdbc1DatabaseMetaData.java *** src/interfaces/jdbc/org/postgresql/jdbc1/AbstractJdbc1DatabaseMetaData.java 2002/09/08 00:15:28 1.5 --- src/interfaces/jdbc/org/postgresql/jdbc1/AbstractJdbc1DatabaseMetaData.java 2002/09/09 20:05:20 *************** *** 2630,2636 **** tuple[2] = rs.getBytes(1); //PKTABLE_NAME tuple[6] = rs.getBytes(2); //FKTABLE_NAME - String fKeyName = rs.getString(3); String updateRule = rs.getString(10); if (updateRule != null ) --- 2630,2635 ---- *************** *** 2712,2718 **** tuple[7] = fkeyColumn.getBytes(); //FKCOLUMN_NAME tuple[8] = rs.getBytes(4); //KEY_SEQ ! tuple[11] = targs.getBytes(); //FK_NAME this will give us a unique name for the foreign key tuple[12] = rs.getBytes(5); //PK_NAME // DEFERRABILITY --- 2711,2717 ---- tuple[7] = fkeyColumn.getBytes(); //FKCOLUMN_NAME tuple[8] = rs.getBytes(4); //KEY_SEQ ! tuple[11] = rs.getBytes(3); //FK_NAME tuple[12] = rs.getBytes(5); //PK_NAME // DEFERRABILITY
pgsql-patches by date: