ibatis-user-java mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Cyril <cyril_j...@yahoo.fr>
Subject Re : Problem when executing stored procedure "Incorrect syntax near the keyword"
Date Tue, 19 Sep 2006 08:12:42 GMT
It seems that this stored procedure has a multi-result set result. The version of iBatis we
are currently using doesn't work with such procedure, but I see the latest release supports
this functionnality.

Time to update our version of iBatis !

Cyril

----- Message d'origine ----
De : Cyril <cyril_jade@yahoo.fr>
À : user-java@ibatis.apache.org
Envoyé le : Lundi, 18 Septembre 2006, 6h02mn 31s
Objet : Problem when executing stored procedure "Incorrect syntax near the keyword"

Hi!

I'm migrating an application from an internal JDBC framework to iBatis. Currently, a lot of
the business work is done in stored procedure, so I just need to call the stored procedures
from DAO with iBatis.

Until now, I hadn't any major issue, but when calling a particular stored procedure, I was
stucked with an SQLException with my sqlMap.queryForList.  The exception is:

com.sybase.jdbc2.jdbc.SybSQLException: Incorrect syntax near the keyword 'from'.

(my data base is Sybase)

It doesn't look an iBatis problem, but when I call the same procedure with the same parameters
from JDBC  or from my SQL client, everything is ok.

My iBatis sql map file contains:


<resultMap id="deliveryDetailResult" class="com.calyon.ccc.ibatis.pojo.DeliveryUtilizationLineFromDatabase">
        <result property="id" column="Id"/>
        <result property="amount" column="Utilisation"/>
        <result property="keyName" column="KeyName"/>
        <result property="authorizationId" column="KeyValue"/>
        <result property="utilizationDate" column="Date"/>
</resultMap>

<procedure id="getDetailedDeliveryUtilizations2" resultMap="deliveryDetailResult">
        <![CDATA[
            {call CCCGetDeliveryUtilization("TODAY", "Profile", "Client", "1234567890", "All",
"N")}
        ]]>
</procedure>


It's just a procedure call, there is no "from" in it. Since I can call the stored procedure
with these parameters from JDBC or SQL client, I assume there is also no problem in the stored
procedure (which contains "from").

My DAO looks like:
List result = null;
try {
      result = sqlMap.queryForList("getDetailedDeliveryUtilizations2", new ArrayList());
} catch (SQLException sqle) {
       LOGGER.error("SQLException " + sqle.getMessage(), sqle);
}

Since I traced with the debugger quite deep in iBatis, I can't understand the problem. It
should not come from iBatis, but does somebody have an idea?

Thanks,
Cyril Gambis







Mime
View raw message