Existe alguma forma de usar createQuery ou algo do genero sem mapear a tabela?
O objetivo é fazer sql dinamico para qualquer banco buscando apenas o nome das tabelas e os campos de cada tabela.
Existe alguma forma de usar createQuery ou algo do genero sem mapear a tabela?
O objetivo é fazer sql dinamico para qualquer banco buscando apenas o nome das tabelas e os campos de cada tabela.
Olá Nilson,
Veja na página de referencia do próprio hibernate.
Você pode fazer assim:
Isso irá retornar uma lista de array de Objetos e nela vc poderá iterar normalmente:
for(Object[] o: list){
System.out.println( o[0] + ":" + o[1] );
}
Espero ter ajudado.
T+
Opa wseidel.
A idéia é a seguinte.
Estou desenvolvendo uma aplicação que faz sql dinamicamente.
Com a tabela mapeada isso foi simples de fazer.
Só usar o createQuery, funcionou certinho.
Porém a idéia agora é alterar para que funcione em qualquer banco, seja postgres, mysql, etc e sem mapear a tabela.
Eu posso criar uma função pra criar o sql concatenando String.
Mas a minha preocupação é que não quero ter que criar uma função assim para cada banco de dados que eu for fazer a consulta pois cada um a sintaxe é diferente.
Se houvesse uma forma de utilizar o createQuery conforme o driver o hibernate traduziria para o banco especificado e eu precisaria duplicar as funçoes.
Valeu.
Oi Nilson, tudo bem?
Desculpe estar desenterrando o tópico, de 1 ano atrás, mas é que estou com problema semelhante e gostaria de saber como você resolveu.
Eu preciso buscar os nomes das tabelas audited do banco, por isso eu queria usar essa select:
Porém, só quero retornar um list de String para poder usar em um combo.
Se puder me ajudar, eu ficaria grata