You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ibatis.apache.org by "Sven Boden (JIRA)" <ib...@incubator.apache.org> on 2006/06/07 12:14:30 UTC

[jira] Commented: (IBATIS-303) SqlMapExecutor.executeBatch() returns 0

    [ http://issues.apache.org/jira/browse/IBATIS-303?page=comments#action_12415107 ] 

Sven Boden commented on IBATIS-303:
-----------------------------------

It's a known problem, and it's not going to be solved. It's not in iBATIS, it's a problem with Oracle's driver. 

The JDBC spec allows vendors to skip certain functionality in executeBatch and this is what Oracle does, they return -2 for updates in executeBatch which iBATIS translates to 0. Oracle just doesn't return the number of rows being updated for prepared statements.

>From the Oracle 9i documentation: "For a prepared statement batch, it is not possible to know the number of rows affected in the database by each individual statement in the batch. Therefore, all array elements have a value of -2. According to the JDBC 2.0 specification, a value of -2 indicates that the operation was successful but the number of rows affected is unknown."



> SqlMapExecutor.executeBatch() returns 0
> ---------------------------------------
>
>          Key: IBATIS-303
>          URL: http://issues.apache.org/jira/browse/IBATIS-303
>      Project: iBatis for Java
>         Type: Bug

>   Components: SQL Maps
>     Versions: 2.1.7
>  Environment: Oracle 9, OCI driver
>     Reporter: george apostolov

>
> SqlMapExecutor.executeBatch() returns 0 on Oracle 9 using the oci jdbc driver.
>  I saw someone had the same issue before but this still seems to be a problem
> Thanks,
> George

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira