Re: Using a like statement
It is in the FAQ: http://opensource.atlassian.com/confluence/oss/display/IBATIS Larry On 5/31/05, Steven Pannell [EMAIL PROTECTED] wrote: Hi, Is there an easy way to describe a 'like' statement in the iBatis xml file. for example I have: select id='dd' parameter=string select * from bush where bush_name like #value# /select Using Oracle I have to make the value look like this: String value = hello% Can't I do this in the map something like: select id='dd' parameter=string select * from bush where bush_name like #value#% /select At present this won't work. cheers, Steve.
Re: Using a like statement
Build your value before sending it to the select statement in your xml file. I set my values in my action by using this: itemQuery.setDescription('%' + request.getParameter(description).toUpperCase() + '%') I, then, pass the parameter itemQuery to my manager and DAO layers. Hope this helps. Al At 06:34 AM 5/31/2005, you wrote: Hi, Is there an easy way to describe a 'like' statement in the iBatis xml file. for example I have: select id='dd' parameter=string select * from bush where bush_name like #value# /select Using Oracle I have to make the value look like this: String value = hello% Can't I do this in the map something like: select id='dd' parameter=string select * from bush where bush_name like #value#% /select At present this won't work. cheers, Steve.
Re: Using a like statement
FAQ misses my favorite approach which is: select * from table1 where column like #parm# || '%' It gives all the advantages of using #parm# over $parm$ and you don't need special processing in the java code to add the '%' . The downside is that || is not universal for string concatenation, so porting maps from one db to another might be a little harder. Brian 2005/5/31, Larry Meadors [EMAIL PROTECTED]: It is in the FAQ: http://opensource.atlassian.com/confluence/oss/display/IBATIS Larry On 5/31/05, Steven Pannell [EMAIL PROTECTED] wrote: Hi, Is there an easy way to describe a 'like' statement in the iBatis xml file. for example I have: select id='dd' parameter=string select * from bush where bush_name like #value# /select Using Oracle I have to make the value look like this: String value = hello% Can't I do this in the map something like: select id='dd' parameter=string select * from bush where bush_name like #value#% /select At present this won't work. cheers, Steve.