cmTDsquery = createQuery("from CmTxnDetailStage cstg where cstg.statusCd=:err" +
" and (cstg.id.batchName like :batchname or cstg.id.batchName like :batchname1)"+
" and cstg.prodTypeBlfd like :search1 "+
" and trunc(cstg.tranUploadDttm)=:uploadDt");
cmTDsquery.bindStringProperty("search1", CmTxnDetailStage.properties.prodTypeBlfd, search);
Я объявил параметр поиска какHibernate языка запросов, как оператор не работает
search = "MON%";
Если я заменю :search1
с 'MON%'
, Он отлично работает и возвращает результат запроса.
Только выше код не работает и возвращает NULL
.
Благодаря
---------------- Редактировать 1
cmTDsquery.bindStringProperty("batchname",CmTxnDetailStage.properties.batchName,batchNamePattern);
cmTDsquery.bindStringProperty("batchname1",CmTxnDetailStage.properties.batchName,batchNamePattern1);
К сожалению упомянуть об этом поздно, но выше методов bindStringProperty работает как шарм. batchname и batchname1 содержит «CR_STLM_UBROL%» и «% RMB_PINDBT%».
Где этот метод "bindStringProperty"? В Query нет такого метода. Показать код, в котором вы указали «cmTDsquery» эту переменную? – Nimesh
@Naman, Вот объявление - Запрос cmTDsquery = null; –
user2725107
Этот синтаксис не кажется, что вы используете hibernate для запроса db. – Nimesh