日期:2014-05-17  浏览次数:20650 次

删除时遇到的问题,请进来指导
这是源码:
StringBuffer query = new StringBuffer();
query.append(" delete from tc_yw_jobs_integrated t1 where 1=1 ");  

if(id!=null && id.trim().length()>0 ) 
query.append(" and t1.JOB_ID in(?)");

Object[] obj = {id};

return ManagerFactory.getInstance().getCommonDaoIMP().exeUpdate(query.toString(),obj);


在实际执行后打印出来的删除语句是这样的:

delete from tc_yw_jobs_integrated t1 where 1=1 and t1.JOB_ID in('71,72');

其中id是int类型,在传参数的工程中用的是?方式,这样就多出了删除语句参数的括号内多了两个单引号,导致无法正确执行sql语句,

请问怎样处理才能把单引号去掉???

------解决方案--------------------
探讨
这是源码:
StringBuffer query = new StringBuffer();
query.append(" delete from tc_yw_jobs_integrated t1 where 1=1 ");

if(id!=null && id.trim().length()>0 )
query.append(" and t1.JOB_ID in……