Boa tarde… estou cm um problema na hora de fazer uma consulta no banco pelo numero do id do objeto…
Quando eu faço a consulta com string funciona direitinho… mas quando tento fazer a consulta pelo id nao funciona e da esse erro aki…
SEVERE: ERROR: operator does not exist: integer ~~ integer
Dica: No operator matches the given name and argument type(s). You might need to add explicit type casts.
Posição: 357
Exception in thread "AWT-EventQueue-0" org.hibernate.exception.SQLGrammarException: could not execute query
Caused by: org.postgresql.util.PSQLException: ERROR: operator does not exist: integer ~~ integer
Dica: No operator matches the given name and argument type(s). You might need to add explicit type casts.
Posição: 357
o codigo da minha classe ComputadorDAO esta dessa forma…
public Computador buscar(int cod) throws SQLException {
Computador c = null;
if (cod != 0) {
Query q = sessao.createQuery("from Computador c where c.id_computador" +
" like :id");
q.setInteger("id", cod);
c = (Computador) q.uniqueResult();
if (c == null) {
JOptionPane.showMessageDialog(null, "Computador nao Cadastrado");
}
} else {
JOptionPane.showMessageDialog(null, "Informe o codigo do Produto");
}
sessao.close();
return c;
}// fim do metodo obter............
e a chamada ao metodo esta dessa forma…
private void btnBuscarActionPerformed(java.awt.event.ActionEvent evt) {
//primeiro eu entro com caixa pra pessoa dar entrada no codigo do produto.....
int cod = Integer.parseInt(JOptionPane.showInputDialog("Entre com o codigo do produto : "));
ComputadorDAO cdao = new ComputadorDAO();
Computador c = new Computador();
try {
// chamada ao metodo buscar......
c = cdao.buscar(cod);
}