Problema com PreparedStatement e BD MySQL

O que ela quiz dizer é que, caso caia direto no catch sem abrir a conexão no try, ele vai tentar fechar uma conexão q nem foi aberta. Realmente não faz sentido fechar a conexão no finally (a não ser q esta conexao esteja sendo aberta fora do try tb).

[]´s

então é só verificar antes se a conexão foi criada, é só verificar se connection é diferente de null

Vou testar fechar a conexão no finaly! Mais ainda não entendi qual seria o ganho, mesmo fazendo o teste se a conexão realmente foi aberta…

Ah! A query funcionou… Mudei o SQL para usar o inner join:
PreparedStatement pstmt = connection.prepareStatement(“SELECT usuario.id_usuario, usuario.chave, usuario.data_cadastro, extrato.mes, extrato.ano, extrato.minutos, premio.nome, premio.meta " +
" FROM usuario” +
" INNER JOIN extrato ON usuario.id_usuario = extrato.id_usuario" +
" INNER JOIN premio ON usuario.id_premio = premio.id_premio" +
" WHERE usuario.chave = ?");

Brigadão a todos pela ajuda :slight_smile: