Query no iReport acessando Mysql erro no uso like

Olá,

porque está dando esse erro …na query abaixo no uso like


net.sf.jasperreports.engine.JRException: Error executing SQL statement for : cate004      at net.sf.jasperreports.engine.query.JRJdbcQueryExecuter.createDatasource(JRJdbcQueryExecuter.java:141)      at net.sf.jasperreports.engine.fill.JRFillDataset.createQueryDatasource(JRFillDataset.java:656)      at net.sf.jasperreports.engine.fill.JRFillDataset.initDatasource(JRFillDataset.java:588)      at net.sf.jasperreports.engine.fill.JRBaseFiller.setParameters(JRBaseFiller.java:1196)      at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:833)      at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:782)      at net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:63)      at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:402)      at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:234)      at it.businesslogic.ireport.IReportCompiler.run(IReportCompiler.java:947)      at java.lang.Thread.run(Unknown Source)  Caused by: java.sql.SQLException: Syntax error or access violation,  message from server: "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '+'%') order by 2,4,3' at line 21"      at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:1905)      at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1109)      at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1203)      at com.mysql.jdbc.Connection.execSQL(Connection.java:2090)      at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:1496)      at net.sf.jasperreports.engine.query.JRJdbcQueryExecuter.createDatasource(JRJdbcQueryExecuter.java:135)      ... 10 more  
Impressão não foi preenchida. Tente utilizar uma Fonte de Dados Vazia ...

SELECT ic.certificate_id,
       icd.cn titular,
       ica.name ac,
       ic.notafter ate,
       ic.notbefore de,
       ic.certificate_state situacao,
       ict.certificate_family  icp,
       ict.name tipo,
       idm.name modelo,
       ic.serialnumber serie,
       iu.name usuario
FROM certificate ic
left join certificate_type ict on ic.certificate_type_id  = ict.certificate_type_id
left join certificate_dn icd on ic.dn_id  = icd.dn_id
left join ca ica on ict.ca_id  = ica.ca_id
left join publickey ipk on ic.publickey_id  = ipk.publickey_id
left join key_container ikc on ipk.publickey_id  = ikc.publickey_id
left join device id on ikc.device_id  = id.device_id
left join device_model idm on id.device_model_id  = idm.device_model_id
left join user iu on id.user_id  = iu.user_id
where ($P{titulari} = '0') or (icd.cn like $P{titulari}+'%')
order by 2,4,3

Erro ao preencher impressão ... Error executing SQL statement for : ImsCertificate004
net.sf.jasperreports.engine.JRException: Error executing SQL statement for : ImsCertificate004      at net.sf.jasperreports.engine.query.JRJdbcQueryExecuter.createDatasource(JRJdbcQueryExecuter.java:141)      at net.sf.jasperreports.engine.fill.JRFillDataset.createQueryDatasource(JRFillDataset.java:656)      at net.sf.jasperreports.engine.fill.JRFillDataset.initDatasource(JRFillDataset.java:588)      at net.sf.jasperreports.engine.fill.JRBaseFiller.setParameters(JRBaseFiller.java:1196)      at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:833)      at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:782)      at net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:63)      at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:402)      at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:234)      at it.businesslogic.ireport.IReportCompiler.run(IReportCompiler.java:947)      at java.lang.Thread.run(Unknown Source)  Caused by: java.sql.SQLException: Syntax error or access violation,  message from server: "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'where ('A%' = '0')  where ('A%' = '0') or (icd.cn like 'A%') order by 2,4,3' at line 21"      at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:1905)      at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1109)      at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1203)      at com.mysql.jdbc.Connection.execSQL(Connection.java:2090)      at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:1496)      at net.sf.jasperreports.engine.query.JRJdbcQueryExecuter.createDatasource(JRJdbcQueryExecuter.java:135)      ... 10 more  
Impressão não foi preenchida. Tente utilizar uma Fonte de Dados Vazia ...