[ 
https://issues.apache.org/jira/browse/DBUTILS-44?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Henri Yandell closed DBUTILS-44.
--------------------------------

    Resolution: Fixed

svn ci -m "Merging in Dab Fabulich's work on 
https://svn.apache.org/repos/asf/commons/sandbox/dbutils/bugfixing from 
-r741987:747723. Resolving DBUTILS-34 - DBUTILS-37 - DBUTILS-29 - DBUTILS-14 - 
DBUTILS-31 - DBUTILS-39 - DBUTILS-41 - DBUTILS-44 - DBUTILS-33 - DBUTILS-42 - 
DBUTILS-40"  

Sending        pom.xml
Sending        src/java/org/apache/commons/dbutils/BasicRowProcessor.java
Sending        src/java/org/apache/commons/dbutils/BeanProcessor.java
Sending        src/java/org/apache/commons/dbutils/QueryRunner.java
Adding         
src/java/org/apache/commons/dbutils/handlers/AbstractListHandler.java
Sending        
src/java/org/apache/commons/dbutils/handlers/ArrayListHandler.java
Sending        src/java/org/apache/commons/dbutils/handlers/BeanListHandler.java
Sending        
src/java/org/apache/commons/dbutils/handlers/ColumnListHandler.java
Deleting       
src/java/org/apache/commons/dbutils/handlers/GenericListHandler.java
Sending        src/java/org/apache/commons/dbutils/handlers/MapListHandler.java
Sending        src/test/org/apache/commons/dbutils/BaseTestCase.java
Adding         src/test/org/apache/commons/dbutils/QueryRunnerTest.java
Transmitting file data .........
Committed revision 747724.

> QueryRunner#fillStatement setNull all database fix proposal
> -----------------------------------------------------------
>
>                 Key: DBUTILS-44
>                 URL: https://issues.apache.org/jira/browse/DBUTILS-44
>             Project: Commons DbUtils
>          Issue Type: Bug
>    Affects Versions: 1.1
>            Reporter: Julien Aymé
>             Fix For: 1.2
>
>         Attachments: QueryRunnerSQLParam.java, SQLParam.java, 
> SQLParamBuilder.java, SQLParamImpl.java
>
>
> There is currently many open issues ( DBUTILS-14, DBUTILS-31, DBUTILS-39 and 
> DBUTILS-41) concerning the problem with setNull(i+1, Types.VARCHAR) in the 
> QueryRunner#fillStatement method when the given object is null.
> I use Commons DbUtils in several projects, and I have found a workaround 
> which works for any database:
> The problem is that when the object is null, the API does not know to which 
> SQL TYPE it should map the object to.
> I've added an Interface, named SQLParam, which exactely resolve this problem:
> {code}
> public interface SQLParam {
>     /**
>      * Returns the object
>      * 
>      * @return the object
>      */
>     public Object getObject();
>     /**
>      * Returns the SQL type of the object,
>      * must be one of {...@link java.sql.Types}
>      * 
>      * @return the type of the object
>      * @see java.sql.Types
>      */
>     public int getType();
> }
> {code}
> Then I've changed the QueryRunner API, by replacing all Object param and 
> Object[] params by SQLParam param and SQLParam[] params (in a new 
> QueryRunnerSQLParam class).
> It does work just well for me; any comments gladly appreciated.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to