diff --git a/src/interfaces/jdbc/org/postgresql/jdbc2/Array.java b/src/interfaces/jdbc/org/postgresql/jdbc2/Array.java index 5e0f86ea35e5cb3f7658c970fc7c61a4e4ac91f1..16015b881bd8ee6f2f4852bd1abe117f69b5dc94 100644 --- a/src/interfaces/jdbc/org/postgresql/jdbc2/Array.java +++ b/src/interfaces/jdbc/org/postgresql/jdbc2/Array.java @@ -169,11 +169,11 @@ public class Array implements java.sql.Array } public int getBaseType() throws SQLException { - return Field.getSQLType( getBaseTypeName() ); + return conn.getSQLType(getBaseTypeName()); } public String getBaseTypeName() throws SQLException { - String fType = field.getTypeName(); + String fType = field.getPGType(); if( fType.charAt(0) == '_' ) fType = fType.substring(1); return fType; @@ -195,12 +195,12 @@ public class Array implements java.sql.Array Object array = getArray( index, count, map ); Vector rows = new Vector(); Field[] fields = new Field[2]; - fields[0] = new Field(conn, "INDEX", field.getOID("int2"), 2); + fields[0] = new Field(conn, "INDEX", conn.getOID("int2"), 2); switch ( getBaseType() ) { case Types.BIT: boolean[] booleanArray = (boolean[]) array; - fields[1] = new Field(conn, "VALUE", field.getOID("bool"), 1); + fields[1] = new Field(conn, "VALUE", conn.getOID("bool"), 1); for( int i=0; i<booleanArray.length; i++ ) { byte[][] tuple = new byte[2][0]; tuple[0] = conn.getEncoding().encode( Integer.toString((int)index+i) ); // Index @@ -208,11 +208,11 @@ public class Array implements java.sql.Array rows.addElement(tuple); } case Types.SMALLINT: - fields[1] = new Field(conn, "VALUE", field.getOID("int2"), 2); + fields[1] = new Field(conn, "VALUE", conn.getOID("int2"), 2); case Types.INTEGER: int[] intArray = (int[]) array; if( fields[1] == null ) - fields[1] = new Field(conn, "VALUE", field.getOID("int4"), 4); + fields[1] = new Field(conn, "VALUE", conn.getOID("int4"), 4); for( int i=0; i<intArray.length; i++ ) { byte[][] tuple = new byte[2][0]; tuple[0] = conn.getEncoding().encode( Integer.toString((int)index+i) ); // Index @@ -222,7 +222,7 @@ public class Array implements java.sql.Array break; case Types.BIGINT: long[] longArray = (long[]) array; - fields[1] = new Field(conn, "VALUE", field.getOID("int8"), 8); + fields[1] = new Field(conn, "VALUE", conn.getOID("int8"), 8); for( int i=0; i<longArray.length; i++ ) { byte[][] tuple = new byte[2][0]; tuple[0] = conn.getEncoding().encode( Integer.toString((int)index+i) ); // Index @@ -232,7 +232,7 @@ public class Array implements java.sql.Array break; case Types.NUMERIC: BigDecimal[] bdArray = (BigDecimal[]) array; - fields[1] = new Field(conn, "VALUE", field.getOID("numeric"), -1); + fields[1] = new Field(conn, "VALUE", conn.getOID("numeric"), -1); for( int i=0; i<bdArray.length; i++ ) { byte[][] tuple = new byte[2][0]; tuple[0] = conn.getEncoding().encode( Integer.toString((int)index+i) ); // Index @@ -242,7 +242,7 @@ public class Array implements java.sql.Array break; case Types.REAL: float[] floatArray = (float[]) array; - fields[1] = new Field(conn, "VALUE", field.getOID("float4"), 4); + fields[1] = new Field(conn, "VALUE", conn.getOID("float4"), 4); for( int i=0; i<floatArray.length; i++ ) { byte[][] tuple = new byte[2][0]; tuple[0] = conn.getEncoding().encode( Integer.toString((int)index+i) ); // Index @@ -252,7 +252,7 @@ public class Array implements java.sql.Array break; case Types.DOUBLE: double[] doubleArray = (double[]) array; - fields[1] = new Field(conn, "VALUE", field.getOID("float8"), 8); + fields[1] = new Field(conn, "VALUE", conn.getOID("float8"), 8); for( int i=0; i<doubleArray.length; i++ ) { byte[][] tuple = new byte[2][0]; tuple[0] = conn.getEncoding().encode( Integer.toString((int)index+i) ); // Index @@ -261,11 +261,11 @@ public class Array implements java.sql.Array } break; case Types.CHAR: - fields[1] = new Field(conn, "VALUE", field.getOID("char"), 1); + fields[1] = new Field(conn, "VALUE", conn.getOID("char"), 1); case Types.VARCHAR: String[] strArray = (String[]) array; if( fields[1] == null ) - fields[1] = new Field(conn, "VALUE", field.getOID("varchar"), -1); + fields[1] = new Field(conn, "VALUE", conn.getOID("varchar"), -1); for( int i=0; i<strArray.length; i++ ) { byte[][] tuple = new byte[2][0]; tuple[0] = conn.getEncoding().encode( Integer.toString((int)index+i) ); // Index @@ -275,7 +275,7 @@ public class Array implements java.sql.Array break; case Types.DATE: java.sql.Date[] dateArray = (java.sql.Date[]) array; - fields[1] = new Field(conn, "VALUE", field.getOID("date"), 4); + fields[1] = new Field(conn, "VALUE", conn.getOID("date"), 4); for( int i=0; i<dateArray.length; i++ ) { byte[][] tuple = new byte[2][0]; tuple[0] = conn.getEncoding().encode( Integer.toString((int)index+i) ); // Index @@ -285,7 +285,7 @@ public class Array implements java.sql.Array break; case Types.TIME: java.sql.Time[] timeArray = (java.sql.Time[]) array; - fields[1] = new Field(conn, "VALUE", field.getOID("time"), 8); + fields[1] = new Field(conn, "VALUE", conn.getOID("time"), 8); for( int i=0; i<timeArray.length; i++ ) { byte[][] tuple = new byte[2][0]; tuple[0] = conn.getEncoding().encode( Integer.toString((int)index+i) ); // Index @@ -295,7 +295,7 @@ public class Array implements java.sql.Array break; case Types.TIMESTAMP: java.sql.Timestamp[] timestampArray = (java.sql.Timestamp[]) array; - fields[1] = new Field(conn, "VALUE", field.getOID("timestamp"), 8); + fields[1] = new Field(conn, "VALUE", conn.getOID("timestamp"), 8); for( int i=0; i<timestampArray.length; i++ ) { byte[][] tuple = new byte[2][0]; tuple[0] = conn.getEncoding().encode( Integer.toString((int)index+i) ); // Index