Like com HQL

6 respostas
M

Como faço para utilizar o HQL e o famoso like ‘%texto%’?Antecipadamente muito obrigado!!

6 Respostas

P

Peguei esse exemplo da documentação do hibernate:

select cat.name from DomesticCat cat where cat.name like 'fri%'
Ele funciona igual a um comando SQL normal.
Flw

M

E como faço no caso das nemed querys (ex:" from Entiti e where e.nome like ? ") ?

P

Espero que ajude:

Query query = em.createQuery("SELECT i FROM Item i WHERE i.product.categoryID LIKE :cID"); query.setParameter ("cID",catID);
flw

C

Colega, eu não uso o Hibernate, mas sim o NHibernate, do .net. Eles são muitíssimo semelhantes, então provavelmente este exemplo irá ajudar:

List retorno = null;

string hql = from Produto p where p.nome like :nome;

IQuery q = session.CreateQuery(hql);

q.SetString(nome, % + aqui_vai_o_valor+ %);

retorno = (List)q.List();

É isso aí

A

Cara é isso mesmo, funcionou certinho, o manual do hibernate não é muito claro sobre esse tipo de pesquisa…
Valeu…

D

com HQL:

Fiz assim e testei e deu certo!!!

createQuery(..... user like :usuario);

query.setString("usuario", usuario+"%");

ou

query.setString("usuario", "%"+usuario);

ou ainda

query.setString("usuario", "%"+usuario+"%");

abracos

Criado 5 de março de 2008
Ultima resposta 14 de jul. de 2010
Respostas 6
Participantes 5