Problem:
- Boolean not on list of SQLKeywords (The JDBC CTS seems to think that
it should be)
- setObject(x,y,Types.INTEGER) will throw exceptions if y is a Boolean.
Fix:
- Added Boolean to Keywords list.
- Added check in setObject() under Types.INTEGER to check if a boolean
is passed. True=1. False=0. Is consistent with the rest of the code.
Cheers,
Kim
Index: org/postgresql/jdbc1/AbstractJdbc1DatabaseMetaData.java
===================================================================
RCS file: /projects/cvsroot/pgsql-server/src/interfaces/jdbc/org/postgresql/jdbc1/AbstractJdbc1DatabaseMetaData.java,v
retrieving revision 1.22
diff -c -p -c -p -r1.22 AbstractJdbc1DatabaseMetaData.java
*** org/postgresql/jdbc1/AbstractJdbc1DatabaseMetaData.java 29 May 2003 04:39:49 -0000 1.22
--- org/postgresql/jdbc1/AbstractJdbc1DatabaseMetaData.java 17 Jun 2003 15:30:59 -0000
*************** public abstract class AbstractJdbc1Datab
*** 12,18 ****
{
private static final String keywords = "abort,acl,add,aggregate,append,archive," +
! "arch_store,backward,binary,change,cluster," +
"copy,database,delimiter,delimiters,do,extend," +
"explain,forward,heavy,index,inherits,isnull," +
"light,listen,load,merge,nothing,notify," +
--- 12,18 ----
{
private static final String keywords = "abort,acl,add,aggregate,append,archive," +
! "arch_store,backward,binary,boolean,change,cluster," +
"copy,database,delimiter,delimiters,do,extend," +
"explain,forward,heavy,index,inherits,isnull," +
"light,listen,load,merge,nothing,notify," +
Index: org/postgresql/jdbc1/AbstractJdbc1Statement.java
===================================================================
RCS file: /projects/cvsroot/pgsql-server/src/interfaces/jdbc/org/postgresql/jdbc1/AbstractJdbc1Statement.java,v
retrieving revision 1.24
diff -c -p -c -p -r1.24 AbstractJdbc1Statement.java
*** org/postgresql/jdbc1/AbstractJdbc1Statement.java 29 May 2003 04:52:44 -0000 1.24
--- org/postgresql/jdbc1/AbstractJdbc1Statement.java 17 Jun 2003 15:31:00 -0000
*************** public abstract class AbstractJdbc1State
*** 1462,1468 ****
switch (targetSqlType)
{
case Types.INTEGER:
! bind(parameterIndex, x.toString(), PG_INTEGER);
break;
case Types.TINYINT:
case Types.SMALLINT:
--- 1462,1471 ----
switch (targetSqlType)
{
case Types.INTEGER:
! if (x instanceof Boolean)
! bind(parameterIndex,((Boolean)x).booleanValue() ? "1" :"0", PG_BOOLEAN);
! else
! bind(parameterIndex, x.toString(), PG_INTEGER);
break;
case Types.TINYINT:
case Types.SMALLINT:
---------------------------(end of broadcast)---------------------------
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]