Olá Douglas!
Pela imagem que você compartilhou, parece que você está enfrentando um problema ao tentar realizar um depósito em uma conta que, segundo a mensagem de erro, não está cadastrada.
O erro específico apontado na imagem é: "Erro: Não existe conta cadastrada com esse número!" Isso sugere que o número da conta que você está tentando acessar para realizar o depósito não está presente no banco de dados.
Analisando o contexto que você forneceu, percebo que o método realizarDeposito
do ContaService
chama o método buscarContaPorNumero
para verificar se a conta existe antes de prosseguir com o depósito. Se a conta não for encontrada, a exceção RegraDeNegocioException
é lançada com a mensagem que você está vendo.
Agora, olhando para a sua captura de tela, vejo que há um problema na instrução SQL que está sendo montada no método alterar
da classe ContaDAO
. A instrução SQL parece estar incorreta. A string SQL está definida como "UPDATE conta SET saldo = ?,WHERE numero = ?";
e há uma vírgula antes do WHERE
que não deveria estar ali. Isso pode causar um erro de sintaxe no SQL quando a instrução for executada.
Para corrigir o problema, você deve remover a vírgula da string SQL, de modo que a instrução fique correta:
String sql = "UPDATE conta SET saldo = ? WHERE numero = ?";
Depois de fazer essa correção, tente executar o depósito novamente. Se o número da conta que você está usando realmente existir no banco de dados, o depósito deve ser realizado com sucesso.
Espero que essa informação ajude a resolver o problema! Bons estudos!
o erro continua mesmo sem a virgula