Problemas ao tentar SELECT com JDBC
Boa noite pessoal!
Montei um select com join para acessar 3 tabelas relacionadas para usar no JDBC, o select funciona corretamente no Workbench do MySQL. Mas quando uso ele no Código Java ele me dá um retorno de erro 1064 (Erro na sintaxe do código SQL), alguém poderia me ajudar? Código que retorna o erro abaixo:
public List listarProdutoCategoria(String nmCategoria) throws SQLException {
String sql = "SELECT Modelo.idModelo, Produto.nmProduto, Produto.dsDescricao, Produto.dtCadastro, Produto.idCategoria, "
+ “Categoria.nmCategoria, Modelo.nmModelo, Modelo.cdPreco, Modelo.pontuacao”+
“FROM Produto join Categoria join Modelo WHERE Categoria.nmCategoria = ?” +
“and Produto.idCategoria = Categoria.idCategoria”;
PreparedStatement stmt = conn.prepareStatement(sql);
Produto p;
try{
stmt.setString(1, nmCategoria);
ResultSet rs = stmt.executeQuery();
while(rs.next()){
p = new Produto();
p.setNmProduto(rs.getString("nmProduto"));
p.setComent(rs.getString("dsDescricao"));
p.setDtCadastro(rs.getDate("dtCadastro"));
//adicionar nmCategoria ao produto, ou usar grande if com todas as opções de retorno por id
//p.setNmCategoria(rs.getInt("nmCategoria"));
p.setIdCategoria(rs.getInt("idCategoria"));
p.setModelo(rs.getString("nmModelo"));
p.setPreco(rs.getBigDecimal("cdPreco"));
p.setPontuacao(rs.getInt("pontuacao"));
produtoCategoria.add(p);
}
rs.close();
stmt.close();
conn.close();
}catch(SQLException ex){
System.out.println(ex.getMessage());
//throw new RuntimeException(ex);
}
return produtoCategoria;
}
Sou iniciante, então estou um pouco perdido com este erro...
Montei um select com join para acessar 3 tabelas relacionadas para usar no JDBC, o select funciona corretamente no Workbench do MySQL. Mas quando uso ele no Código Java ele me dá um retorno de erro 1064 (Erro na sintaxe do código SQL), alguém poderia me ajudar? Código que retorna o erro abaixo:
public List listarProdutoCategoria(String nmCategoria) throws SQLException {
String sql = "SELECT Modelo.idModelo, Produto.nmProduto, Produto.dsDescricao, Produto.dtCadastro, Produto.idCategoria, "
+ “Categoria.nmCategoria, Modelo.nmModelo, Modelo.cdPreco, Modelo.pontuacao”+
“FROM Produto join Categoria join Modelo WHERE Categoria.nmCategoria = ?” +
“and Produto.idCategoria = Categoria.idCategoria”;
PreparedStatement stmt = conn.prepareStatement(sql);
Produto p;
try{
stmt.setString(1, nmCategoria);
ResultSet rs = stmt.executeQuery();
while(rs.next()){
p = new Produto();
p.setNmProduto(rs.getString("nmProduto"));
p.setComent(rs.getString("dsDescricao"));
p.setDtCadastro(rs.getDate("dtCadastro"));
//adicionar nmCategoria ao produto, ou usar grande if com todas as opções de retorno por id
//p.setNmCategoria(rs.getInt("nmCategoria"));
p.setIdCategoria(rs.getInt("idCategoria"));
p.setModelo(rs.getString("nmModelo"));
p.setPreco(rs.getBigDecimal("cdPreco"));
p.setPontuacao(rs.getInt("pontuacao"));
produtoCategoria.add(p);
}
rs.close();
stmt.close();
conn.close();
}catch(SQLException ex){
System.out.println(ex.getMessage());
//throw new RuntimeException(ex);
}
return produtoCategoria;
}
Sou iniciante, então estou um pouco perdido com este erro...
Eduardo Reis
Curtidas 0