CITH 4 Denunciar post Postado Junho 22, 2015 Estou utilizando Hibernate para fazer a persistência com o BD e estou querendo fazer uma consulta dinâmica, mas não sei como. Já pesquisei em vários tópicos mas até agora nada e aqui estou eu.Meu problema é simples, desejo fazer uma consulta no banco de acordo com a escolha do usuário. Ex: ele escolhe filtrar produtos por tipos, então o sistema vai lá no banco, pega todos os tipos existentes e disponibiliza-os para o usuário escolher. Aqui está a tabela Produto: Compartilhar este post Link para o post Compartilhar em outros sites
Vergil 15 Denunciar post Postado Junho 22, 2015 Se o valor da coluna "tipo" é fixo, você deveria ter um enumerado no seu projeto que abstraísse os valores possíveis. Há também a possibilidade - porém não recomendada - de se criar uma tabela de tipos. Daí a consulta seria feita nela. select nome from tipos Como está hoje, seria o caso de se fazer uma busca distinta para tipos de produtos. select distinct tipo from produto Compartilhar este post Link para o post Compartilhar em outros sites
CITH 4 Denunciar post Postado Junho 24, 2015 O problema não é esse, o problema é saber o que o usuário vai pedir. Por exemplo: Se o usuário selecionar "Tipos", ele retorna todos os tipos cadastrados; Se o usuário selecionar "Preço", ele retorna todos os preços cadastrados; ... Eu não posso fazer "select tipo from produto" porque só vai me retornar os tipos, e se for selecionado o preço?Também já tentei passar a escolha do usuário por parâmetro, mas foje da sintaxe. E nenhum valor é estático, quem vai cadastrar os tipos, valores... são os usuários. Compartilhar este post Link para o post Compartilhar em outros sites
Vergil 15 Denunciar post Postado Junho 29, 2015 https://docs.jboss.org/hibernate/core/3.3/reference/en/html/queryhql.html Seção 14.14 a 14.16. Estude os named parameters. É o que você precisa. Compartilhar este post Link para o post Compartilhar em outros sites
CITH 4 Denunciar post Postado Junho 29, 2015 Valeu irmão, vou dar uma estudada :D Compartilhar este post Link para o post Compartilhar em outros sites