1
resposta

Referente ao curso Java e JDBC: trabalhando com um banco de dados, no capítulo Cadastro de informações e atividade Salvando contas no banco

Erro

public void abrir(DadosAberturaConta dadosDaConta) {
        var cliente = new Cliente(dadosDaConta.dadosCliente());
        var conta = new Conta(dadosDaConta.numero(), cliente);
        if (contas.contains(conta)) {
            throw new RegraDeNegocioException("Já existe outra conta aberta com o mesmo número!");
        }

        String sql = "INSERT INTO conta (numero, saldo, cliente_nome, cliente_cpf, cliente_email) VALUES (? ,? ,? ,? ,?)";

        
        // recuperar a conexao na fabrica de conexao que já foi instaciada
        Connection con = connection.recuperarConexao();

        try{
                PreparedStatement preparedStatement = con.prepareStatement(sql);

                preparedStatement.setInt(1, conta.getNumero());
                preparedStatement.setBigDecimal(2, BigDecimal.ZERO);
                preparedStatement.setString(3,dadosDaConta.dadosCliente().nome());
                preparedStatement.setString(4,dadosDaConta.dadosCliente().cpf());
                preparedStatement.setString(5,dadosDaConta.dadosCliente().email());
            } catch (SQLException e) {
                throw new RuntimeException(e);
            }
      }
1 resposta

Olá, Renata! Tudo bem com você?

Analisando o código que você compartilhou, o mesmo não apresenta nenhum problema ou inconsistência, e o erro mostrado no terminal não apresenta informações relacionadas a causa do erro.

Com isso, peço que compartilhe tudo o seu projeto via GitHub ou Drive do Google. Já que assim conseguirei fazer testes para identificar os problemas.

Bons estudos!

Fico no aguardo e à disposição