BUG #6445: PreparedStatement.setObject(1,java.util.String)

From: rajesh4(dot)t(at)tcs(dot)com
To: pgsql-bugs(at)postgresql(dot)org
Subject: BUG #6445: PreparedStatement.setObject(1,java.util.String)
Date: 2012-02-08 19:05:59
Message-ID: E1RvCq7-0003Fi-RK@wrigleys.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

The following bug has been logged on the website:

Bug reference: 6445
Logged by: Rajesh
Email address: rajesh4(dot)t(at)tcs(dot)com
PostgreSQL version: 8.4.3
Operating system: Windows XP
Description:

I have a table in PostgreSQL database

CREATE TABLE newtest
(
id numeric(6),
name character varying(120),
email character varying(120)
)

I am using PreparedStatement so that i can insert data into newtest table

INSERT INTO NewTest (ID,NAME,EMAIL ) values (?,?,? )

Actual query fired -INSERT INTO NewTest (ID,NAME,EMAIL ) values ('1','Rajesh
','rajesh4(dot)t(at)abs(dot)com' )

code for prepared statement

try{
pstatement=conn.prepareStatement(insertQuery);
for(int k=1;k<rows;k++){
pstatement.clearParameters();
Cell datacell[]=sheets[i].getRow(k);
for(int
eachCell=0;eachCell<columnNames.size();eachCell++){
pstatement.setObject(eachCell+1,
datacell[eachCell].getContents());
}
pstatement.addBatch();
}
pstatement.executeBatch();
pstatement.close();
}catch(Exception er){
LOG.error("Failed to set Row data for tableName:
"+tableName,er);
throw new DbComparisonException(er);
}

Please note I am reading data from an excel sheet and
datacell[eachCell].getContents() is of type String..prepareStatement
setObject is complaining that I am sending String datatype which cannot be
casted to bigint or numeric,but that is the job of setObject right to decide
the target datatype and cast accordingly..please reply any
solution..Parameter to setObject(can be anything) so I cannot cast the data
to appropriate format before sending the data

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Kris Jurka 2012-02-08 20:28:37 Re: BUG #6445: PreparedStatement.setObject(1,java.util.String)
Previous Message petr.jediny 2012-02-08 19:01:32 BUG #6444: Postgresql crash