iBATIS uses prepared statements for this, so the SQL that is being
executed is like this:
... AND COMPONENT_MOVEMENT_TYPE_ID in ("12,34,56")
That won't work. you need to make the values like this:
... AND COMPONENT_MOVEMENT_TYPE_ID in ("12","34","56")
That means you either use sql injection (err, substitution I mean) like this:
... AND COMPONENT_MOVEMENT_TYPE_ID in ($someValues$)
...or you need to pass in an array or list and search the archives for
"dynamic sql" and "iterate". I'd highly reccomend this approach over
the $other$.
Larry
On 10/10/06, sonusgr <[EMAIL PROTECTED]> wrote:
Hi guys,
I am trying to pass a string of numbers to the my sql statement
but I am getting SQLException invalid number
The funny thing is that this occurs only when I am passing more than one
number, meaning if that string I am passing
having more than one number.
so in DAO we ve got :
searchVO.setCostComponentIdArrayAsString("1234,456,588");
flights =
this.sqlMap.queryForList("getFlightsbyCriteria", searchVO);
and in sqlMap:
AND COMPONENT_MOVEMENT_TYPE_ID in (#costComponentIdArrayAsString#)
that throws the SQLException
---------
But if I do searchVO.setCostComponentIdArrayAsString("1234");
works fine...
What am I doing wrong here?
could it be a backend error?
thanks guys
--
View this message in context:
http://www.nabble.com/Invalid-Number-tf2417727.html#a6739736
Sent from the iBATIS - User - Java mailing list archive at Nabble.com.