[RESOLVIDO] Ajuda com erro

9 respostas Resolvido
cleitonoliveira

por favor algem pode me ajudar com este erro? não encontro nada errado.

Erreur de syntaxe près de ‘SELECTpk_id_produto,pro_nome,pro_valor,pro_estoqueFROMtbl_produto’ à la ligne 1

segue codigo

/*

  • To change this license header, choose License Headers in Project Properties.
  • To change this template file, choose Tools | Templates
  • and open the template in the editor.
    */
    package DAO;
import conexoes.ConexaoMySql;

import java.util.ArrayList;

import model.ModelProdutos;

/**
*

  • @author cleit
    */
    public class DaoProdutos extends ConexaoMySql {

    /**

    • Cadastrar um produto no banco

    • @param pModelProdutos

    • @return
      
      */
      
      public int salvarProdutosDAO(ModelProdutos pModelProdutos) {
      
      try {
      
      this.conectar();
      
      return this.insertSQL(“INSERT INTO tbl_produto (”
      
      + “pro_nome,”
      
      + “pro_valor,”
      
      + “pro-estoque”
      
      + “) VALUES (”
      
      + “’” + pModelProdutos.getProNome() + “’,”
      
      + “’” + pModelProdutos.getProValor() + “’,”
      
      + “’” + pModelProdutos.getProEstoque() + “’”
      
      +");"
      
      );
      
      } catch (Exception e) {
      
      e.printStackTrace();
      
      return 0;
      
      } finally {
      
      this.fecharConexao();
      
      }
      

    }

    /**

    • excluir um produto do banco
    • @param pIdProduto
    • @return boolean
      */
    public boolean excluirProdutoDAO(int pIdProduto) {
    
    try {
    
    this.conectar();
    
    return this.executarUpdateDeleteSQL(
    
    “DELETE FROM tbl_produto WHERE pk_id_produto =’” + pIdProduto + “’”
    
    );
    
    } catch (Exception e) {
    
    e.printStackTrace();
    
    return false;
    
    } finally {
    
    this.fecharConexao();
    
    }
    

    }

    /**

    • Alterar Dados do Produto

    • @param pModelProdutos

    • @return boolean
      */
      public boolean alterarProdutoDAO(ModelProdutos pModelProdutos) {

      try {
      
      this.conectar();
      
      return this.executarUpdateDeleteSQL(
      
      “UPADE tbl_produto SET”
      
      + “pro_nome =’” + pModelProdutos.getProNome() + “’,”
      
      + “pro_valor = '” + pModelProdutos.getProValor() + “’,”
      
      + “pro_estoque =’” + pModelProdutos.getProEstoque() + “’,”
      
      + " WHERE pk_id_produto = ‘" + pModelProdutos.getIdProduto() + "’"
      
      );
      
      } catch (Exception e) {
      
      e.printStackTrace();
      
      return false;
      
      } finally {
      
      this.fecharConexao();
      
      }
      
      }
      

    /**

    • Tetornar um produto pelo Codigo
    • @param pIdProduto
    • @return modelProduto
      */
    public ModelProdutos retornarProdutoDAO(int pIdProduto){
    
    ModelProdutos modelProdutos = new ModelProdutos();
    
    try{
    
    this.conectar();
    
    this.executarSQL(“SELECT”
    
    + “pk_id_produto, “
    
    + “pro_nome,”
    
    + “pro_valor,”
    
    + “pro_estoque”
    
    + “FROM”
    
    + " tbl_produto WHERE pk_id_produto =’”+pIdProduto+”’;");
    
    while (this.getResultSet().next()){
    
    modelProdutos.setIdProduto(this.getResultSet().getInt(1));
    
    modelProdutos.setProNome(this.getResultSet().getString(2));
    
    modelProdutos.setProValor(this.getResultSet().getDouble(3));
    
    modelProdutos.setProEstoque(this.getResultSet().getInt(4));
    
    }
     
     }catch(Exception e){
         e.printStackTrace();
     }finally {
         this.fecharConexao();
     }
     return modelProdutos;
    

    }

    /**

    • retornar uma lista completa de de produtos

    • @return listaModelProdutos
      
      */
      
      public ArrayList retornarListaProdutosDAO(){
      
      ArrayList listaModelProdutos = new ArrayList<>();
      
      ModelProdutos modelProdutos = new ModelProdutos();
      
      try {
      
      this.conectar();
      
      this.executarSQL (“SELECT”
      
      + “pk_id_produto,”
      
      + “pro_nome,”
      
      + “pro_valor,”
      
      + “pro_estoque”
      
      + “FROM”
      
      +“tbl_produto;”);
      
      while (this.getResultSet().next()){
       modelProdutos = new ModelProdutos();
       modelProdutos.setIdProduto(this.getResultSet().getInt(1));
       modelProdutos.setProNome(this.getResultSet().getString(2));
       modelProdutos.setProValor(this.getResultSet().getDouble(3));
       modelProdutos.setProEstoque(this.getResultSet().getInt(4));
       listaModelProdutos.add(modelProdutos);
      
           }
      
      } catch (Exception e) {
      
      e.printStackTrace();
      
      }finally{
      
      this.fecharConexao();
      
      }
      
      return listaModelProdutos;
      
      }
      

}

9 Respostas

rodriguesabner

Cara, faz alguns teste soltos.

Por exemplo:

“SELECT * FROM tbl_produto”

rodriguesabner

Não sei se vc fez isso só aqui, mas vc precisa separar as coisas:

SELECT pk_id_produto,pro_nome,pro_valor,pro_estoque FROM tbl_produto

cleitonoliveira

segue codigo

/*

  • To change this license header, choose License Headers in Project Properties.
  • To change this template file, choose Tools | Templates
  • and open the template in the editor.
    */
    package DAO;
import conexoes.ConexaoMySql;

import java.util.ArrayList;

import model.ModelProdutos;

/**
*

  • @author cleit
    */
    public class DaoProdutos extends ConexaoMySql {

    /**

    • Cadastrar um produto no banco

    • @param pModelProdutos

    • @return
      
      */
      
      public int salvarProdutosDAO(ModelProdutos pModelProdutos) {
      
      try {
      
      this.conectar();
      
      return this.insertSQL(“INSERT INTO tbl_produto (”
      
      + “pro_nome,”
      
      + “pro_valor,”
      
      + “pro-estoque”
      
      + “) VALUES (”
      
      + “’” + pModelProdutos.getProNome() + “’,”
      
      + “’” + pModelProdutos.getProValor() + “’,”
      
      + “’” + pModelProdutos.getProEstoque() + “’”
      
      +");"
      
      );
      
      } catch (Exception e) {
      
      e.printStackTrace();
      
      return 0;
      
      } finally {
      
      this.fecharConexao();
      
      }
      

    }

    /**

    • excluir um produto do banco
    • @param pIdProduto
    • @return boolean
      */
    public boolean excluirProdutoDAO(int pIdProduto) {
    
    try {
    
    this.conectar();
    
    return this.executarUpdateDeleteSQL(
    
    “DELETE FROM tbl_produto WHERE pk_id_produto =’” + pIdProduto + “’”
    
    );
    
    } catch (Exception e) {
    
    e.printStackTrace();
    
    return false;
    
    } finally {
    
    this.fecharConexao();
    
    }
    

    }

    /**

    • Alterar Dados do Produto

    • @param pModelProdutos

    • @return boolean
      */
      public boolean alterarProdutoDAO(ModelProdutos pModelProdutos) {

      try {
      
      this.conectar();
      
      return this.executarUpdateDeleteSQL(
      
      “UPADE tbl_produto SET”
      
      + “pro_nome =’” + pModelProdutos.getProNome() + “’,”
      
      + “pro_valor = '” + pModelProdutos.getProValor() + “’,”
      
      + “pro_estoque =’” + pModelProdutos.getProEstoque() + “’,”
      
      + " WHERE pk_id_produto = ‘" + pModelProdutos.getIdProduto() + "’"
      
      );
      
      } catch (Exception e) {
      
      e.printStackTrace();
      
      return false;
      
      } finally {
      
      this.fecharConexao();
      
      }
      
      }
      

    /**

    • Tetornar um produto pelo Codigo
    • @param pIdProduto
    • @return modelProduto
      */
    public ModelProdutos retornarProdutoDAO(int pIdProduto){
    
    ModelProdutos modelProdutos = new ModelProdutos();
    
    try{
    
    this.conectar();
    
    this.executarSQL(“SELECT”
    
    + “pk_id_produto, “
    
    + “pro_nome,”
    
    + “pro_valor,”
    
    + “pro_estoque”
    
    + “FROM”
    
    + " tbl_produto WHERE pk_id_produto =’”+pIdProduto+”’;");
    
    while (this.getResultSet().next()){
    
    modelProdutos.setIdProduto(this.getResultSet().getInt(1));
    
    modelProdutos.setProNome(this.getResultSet().getString(2));
    
    modelProdutos.setProValor(this.getResultSet().getDouble(3));
    
    modelProdutos.setProEstoque(this.getResultSet().getInt(4));
    
    }
     
     }catch(Exception e){
         e.printStackTrace();
     }finally {
         this.fecharConexao();
     }
     return modelProdutos;
    

    }

    /**

    • retornar uma lista completa de de produtos

    • @return listaModelProdutos
      
      */
      
      public ArrayList retornarListaProdutosDAO(){
      
      ArrayList listaModelProdutos = new ArrayList<>();
      
      ModelProdutos modelProdutos = new ModelProdutos();
      
      try {
      
      this.conectar();
      
      this.executarSQL (“SELECT”
      
      + “pk_id_produto,”
      
      + “pro_nome,”
      
      + “pro_valor,”
      
      + “pro_estoque”
      
      + “FROM”
      
      +“tbl_produto;”);
      
      while (this.getResultSet().next()){
       modelProdutos = new ModelProdutos();
       modelProdutos.setIdProduto(this.getResultSet().getInt(1));
       modelProdutos.setProNome(this.getResultSet().getString(2));
       modelProdutos.setProValor(this.getResultSet().getDouble(3));
       modelProdutos.setProEstoque(this.getResultSet().getInt(4));
       listaModelProdutos.add(modelProdutos);
      
           }
      
      } catch (Exception e) {
      
      e.printStackTrace();
      
      }finally{
      
      this.fecharConexao();
      
      }
      
      return listaModelProdutos;
      
      }
      

}

rodriguesabner
Solucao aceita

Aqui é “UPDATE”

Assim no código é ruim de achar algo, não dá retorna nenhum erro qnd vc executa?

rodriguesabner

Cara esse jeito que vc faz te confunde muito.

Não usa esse + ’ + ’ + ’ + '.

Aproveita que o SQL é pequeno e faz direto:

“SELECT
+ “pk_id_produto,”
+ “pro_nome,”
+ “pro_valor,”
+ “pro_estoque”
+ “FROM”
+“tbl_produto;”);

Aqui vc nao deu espaço em nada…

(“SELECT pk_id_produto, pro_nome, pro_valor, pro_estoque FROM tbl_produto");

cleitonoliveira

Valeu pela ajuda Abner, consegui achar onten o erro, mas agradeço mesmo a forca, ate pq não sabia que poderia fazer direto sem tantos +, e dava só o erro de sintaxe mesmo e não retornava a lista.

rodriguesabner

Beleza, tamo junto!!! Qual era o erro?

cleitonoliveira

digitação mesmo, como vc falou estava “UPADE” ao invés de “UPDATE” e faltava fechar um parênteses.

rodriguesabner

Boa!

Criado 9 de junho de 2018
Ultima resposta 12 de jun. de 2018
Respostas 9
Participantes 2