? org/postgresql/jdbc2/.AbstractJdbc2Statement.java.swp ? org/postgresql/test/jdbc2/.ArrayTest.java.swp Index: org/postgresql/jdbc2/AbstractJdbc2Array.java =================================================================== RCS file: /usr/local/cvsroot/pgjdbc/pgjdbc/org/postgresql/jdbc2/AbstractJdbc2Array.java,v retrieving revision 1.1 diff -c -r1.1 AbstractJdbc2Array.java *** org/postgresql/jdbc2/AbstractJdbc2Array.java 16 Jul 2004 09:07:56 -0000 1.1 --- org/postgresql/jdbc2/AbstractJdbc2Array.java 29 Jul 2004 21:16:41 -0000 *************** *** 165,170 **** --- 165,171 ---- break; case Types.CHAR: case Types.VARCHAR: + case Types.LONGVARCHAR: retVal = new String[ count ]; for ( ; count > 0; count-- ) ((String[])retVal)[i++] = arrayContents[(int)index++]; *************** *** 297,308 **** rows.addElement(tuple); } break; case Types.CHAR: fields[1] = new Field("VALUE", Oid.CHAR, 1); case Types.VARCHAR: String[] strArray = (String[]) array; - if ( fields[1] == null ) - fields[1] = new Field("VALUE", Oid.VARCHAR, -1); for ( int i = 0; i < strArray.length; i++ ) { byte[][] tuple = new byte[2][0]; --- 298,315 ---- rows.addElement(tuple); } break; + case Types.CHAR: fields[1] = new Field("VALUE", Oid.CHAR, 1); case Types.VARCHAR: + fields[1] = new Field("VALUE", Oid.VARCHAR, -1); + case Types.LONGVARCHAR: + fields[1] = new Field("VALUE", Oid.TEXT, -1); + + // Everything falls through from above. + // + String[] strArray = (String[]) array; for ( int i = 0; i < strArray.length; i++ ) { byte[][] tuple = new byte[2][0]; Index: org/postgresql/jdbc2/AbstractJdbc2Connection.java =================================================================== RCS file: /usr/local/cvsroot/pgjdbc/pgjdbc/org/postgresql/jdbc2/AbstractJdbc2Connection.java,v retrieving revision 1.14 diff -c -r1.14 AbstractJdbc2Connection.java *** org/postgresql/jdbc2/AbstractJdbc2Connection.java 27 Jul 2004 05:19:33 -0000 1.14 --- org/postgresql/jdbc2/AbstractJdbc2Connection.java 29 Jul 2004 21:16:41 -0000 *************** *** 1061,1067 **** "float4", "float8", "bpchar", "char", "char2", "char4", "char8", "char16", ! "varchar", "text", "name", "filename", "bytea", "bool", "bit", --- 1061,1068 ---- "float4", "float8", "bpchar", "char", "char2", "char4", "char8", "char16", ! "varchar", "name", "filename", ! "text", "bytea", "bool", "bit", *************** *** 1090,1096 **** Types.REAL, Types.DOUBLE, Types.CHAR, Types.CHAR, Types.CHAR, Types.CHAR, Types.CHAR, Types.CHAR, ! Types.VARCHAR, Types.VARCHAR, Types.VARCHAR, Types.VARCHAR, Types.BINARY, Types.BIT, Types.BIT, --- 1091,1098 ---- Types.REAL, Types.DOUBLE, Types.CHAR, Types.CHAR, Types.CHAR, Types.CHAR, Types.CHAR, Types.CHAR, ! Types.VARCHAR, Types.VARCHAR, Types.VARCHAR, ! Types.LONGVARCHAR, Types.BINARY, Types.BIT, Types.BIT, Index: org/postgresql/jdbc2/AbstractJdbc2ResultSet.java =================================================================== RCS file: /usr/local/cvsroot/pgjdbc/pgjdbc/org/postgresql/jdbc2/AbstractJdbc2ResultSet.java,v retrieving revision 1.44 diff -c -r1.44 AbstractJdbc2ResultSet.java *** org/postgresql/jdbc2/AbstractJdbc2ResultSet.java 27 Jul 2004 05:19:33 -0000 1.44 --- org/postgresql/jdbc2/AbstractJdbc2ResultSet.java 29 Jul 2004 21:16:41 -0000 *************** *** 133,138 **** --- 133,139 ---- return new Double(getDouble(columnIndex)); case Types.CHAR: case Types.VARCHAR: + case Types.LONGVARCHAR: return getString(columnIndex); case Types.DATE: return getDate(columnIndex); *************** *** 142,147 **** --- 143,149 ---- return getTimestamp(columnIndex); case Types.BINARY: case Types.VARBINARY: + case Types.LONGVARBINARY: return getBytes(columnIndex); case Types.ARRAY: return getArray(columnIndex); *************** *** 1668,1673 **** --- 1670,1676 ---- case Types.DOUBLE: case Types.BIT: case Types.VARCHAR: + case Types.LONGVARCHAR: case Types.DATE: case Types.TIME: case Types.TIMESTAMP: Index: org/postgresql/jdbc2/AbstractJdbc2ResultSetMetaData.java =================================================================== RCS file: /usr/local/cvsroot/pgjdbc/pgjdbc/org/postgresql/jdbc2/AbstractJdbc2ResultSetMetaData.java,v retrieving revision 1.10 diff -c -r1.10 AbstractJdbc2ResultSetMetaData.java *** org/postgresql/jdbc2/AbstractJdbc2ResultSetMetaData.java 29 Jul 2004 19:34:05 -0000 1.10 --- org/postgresql/jdbc2/AbstractJdbc2ResultSetMetaData.java 29 Jul 2004 21:16:41 -0000 *************** *** 349,356 **** return 16; case Types.DOUBLE: return 16; - case Types.VARCHAR: - return 0; case Types.NUMERIC: Field f = getField(column); if (f != null) { --- 349,354 ---- *************** *** 391,398 **** return 16; case Types.DOUBLE: return 16; - case Types.VARCHAR: - return 0; case Types.NUMERIC: Field f = getField(column); if (f != null) { --- 389,394 ---- *************** *** 609,614 **** --- 605,611 ---- switch (sql_type) { + case Types.BOOLEAN: case Types.BIT: return ("java.lang.Boolean"); case Types.SMALLINT: *************** *** 625,630 **** --- 622,628 ---- return ("java.lang.Double"); case Types.CHAR: case Types.VARCHAR: + case Types.LONGVARCHAR: return ("java.lang.String"); case Types.DATE: return ("java.sql.Date"); *************** *** 634,639 **** --- 632,642 ---- return ("java.sql.Timestamp"); case Types.BINARY: case Types.VARBINARY: + case Types.LONGVARBINARY: + // this is the result of + // (new byte[0]).getClass().getName() + // although it is kind of useless because it + // can't be used in Class.forName() return ("[B"); case Types.ARRAY: return ("java.sql.Array"); Index: org/postgresql/jdbc3/AbstractJdbc3Connection.java =================================================================== RCS file: /usr/local/cvsroot/pgjdbc/pgjdbc/org/postgresql/jdbc3/AbstractJdbc3Connection.java,v retrieving revision 1.7 diff -c -r1.7 AbstractJdbc3Connection.java *** org/postgresql/jdbc3/AbstractJdbc3Connection.java 9 Jul 2004 23:50:28 -0000 1.7 --- org/postgresql/jdbc3/AbstractJdbc3Connection.java 29 Jul 2004 21:16:43 -0000 *************** *** 430,436 **** "float4", "float8", "bpchar", "char", "char2", "char4", "char8", "char16", ! "varchar", "text", "name", "filename", "bytea", "bool", "bit", --- 430,437 ---- "float4", "float8", "bpchar", "char", "char2", "char4", "char8", "char16", ! "varchar", "name", "filename", ! "text", "bytea", "bool", "bit", *************** *** 459,465 **** Types.REAL, Types.DOUBLE, Types.CHAR, Types.CHAR, Types.CHAR, Types.CHAR, Types.CHAR, Types.CHAR, ! Types.VARCHAR, Types.VARCHAR, Types.VARCHAR, Types.VARCHAR, Types.BINARY, Types.BIT, Types.BIT, --- 460,467 ---- Types.REAL, Types.DOUBLE, Types.CHAR, Types.CHAR, Types.CHAR, Types.CHAR, Types.CHAR, Types.CHAR, ! Types.VARCHAR, Types.VARCHAR, Types.VARCHAR, ! Types.LONGVARCHAR, Types.BINARY, Types.BIT, Types.BIT, Index: org/postgresql/test/jdbc2/ArrayTest.java =================================================================== RCS file: /usr/local/cvsroot/pgjdbc/pgjdbc/org/postgresql/test/jdbc2/ArrayTest.java,v retrieving revision 1.2 diff -c -r1.2 ArrayTest.java *** org/postgresql/test/jdbc2/ArrayTest.java 20 Jul 2004 00:24:37 -0000 1.2 --- org/postgresql/test/jdbc2/ArrayTest.java 29 Jul 2004 21:16:43 -0000 *************** *** 54,60 **** assertEquals(new BigDecimal("1.4"), decarr[1]); arr = rs.getArray(3); ! assertEquals(Types.VARCHAR, arr.getBaseType()); String strarr[] = (String[])arr.getArray(2,2); assertEquals(2,strarr.length); assertEquals("f'a", strarr[0]); --- 54,60 ---- assertEquals(new BigDecimal("1.4"), decarr[1]); arr = rs.getArray(3); ! assertEquals(Types.LONGVARCHAR, arr.getBaseType()); String strarr[] = (String[])arr.getArray(2,2); assertEquals(2,strarr.length); assertEquals("f'a", strarr[0]); *************** *** 98,104 **** arrrs.close(); arr = rs.getArray(3); ! assertEquals(Types.VARCHAR, arr.getBaseType()); arrrs = arr.getResultSet(2,2); assertTrue(arrrs.next()); assertEquals(2, arrrs.getInt(1)); --- 98,104 ---- arrrs.close(); arr = rs.getArray(3); ! assertEquals(Types.LONGVARCHAR, arr.getBaseType()); arrrs = arr.getResultSet(2,2); assertTrue(arrrs.next()); assertEquals(2, arrrs.getInt(1)); Index: org/postgresql/test/jdbc2/DatabaseMetaDataTest.java =================================================================== RCS file: /usr/local/cvsroot/pgjdbc/pgjdbc/org/postgresql/test/jdbc2/DatabaseMetaDataTest.java,v retrieving revision 1.25 diff -c -r1.25 DatabaseMetaDataTest.java *** org/postgresql/test/jdbc2/DatabaseMetaDataTest.java 29 Jun 2004 06:43:28 -0000 1.25 --- org/postgresql/test/jdbc2/DatabaseMetaDataTest.java 29 Jul 2004 21:16:43 -0000 *************** *** 68,74 **** assertTrue( rs.next() ); assertEquals( "testmetadata", rs.getString("TABLE_NAME") ); assertEquals( "name", rs.getString("COLUMN_NAME") ); ! assertEquals( java.sql.Types.VARCHAR, rs.getInt("DATA_TYPE") ); assertTrue( rs.next() ); assertEquals( "testmetadata", rs.getString("TABLE_NAME") ); --- 68,74 ---- assertTrue( rs.next() ); assertEquals( "testmetadata", rs.getString("TABLE_NAME") ); assertEquals( "name", rs.getString("COLUMN_NAME") ); ! assertEquals( java.sql.Types.LONGVARCHAR, rs.getInt("DATA_TYPE") ); assertTrue( rs.next() ); assertEquals( "testmetadata", rs.getString("TABLE_NAME") ); Index: org/postgresql/test/jdbc2/ResultSetMetaDataTest.java =================================================================== RCS file: /usr/local/cvsroot/pgjdbc/pgjdbc/org/postgresql/test/jdbc2/ResultSetMetaDataTest.java,v retrieving revision 1.2 diff -c -r1.2 ResultSetMetaDataTest.java *** org/postgresql/test/jdbc2/ResultSetMetaDataTest.java 9 Jul 2004 23:50:32 -0000 1.2 --- org/postgresql/test/jdbc2/ResultSetMetaDataTest.java 29 Jul 2004 21:16:43 -0000 *************** *** 63,70 **** } public void testGetColumnType() throws SQLException { ! assertEquals(rsmd.getColumnType(1), Types.INTEGER); ! assertEquals(rsmd.getColumnType(2), Types.VARCHAR); } public void testGetColumnTypeName() throws SQLException { --- 63,70 ---- } public void testGetColumnType() throws SQLException { ! assertEquals(Types.INTEGER, rsmd.getColumnType(1)); ! assertEquals(Types.LONGVARCHAR, rsmd.getColumnType(2)); } public void testGetColumnTypeName() throws SQLException {