1. java
  2. android
  3. c#
  4. .net
  5. javascript
  6. php
  7. jquery
  8. html
  9. sql

Erro ao tentar se conectar ao Banco de Dados

Olá à todos.,

De um dia para o outro não consigo pegar os dados do BD.

Tentei me conectar pelo cmd do sql e consegui, nesse cmd não apresenta nenhum erro só no eclipse.

O código:



import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;

import javafx.collections.FXCollections;
import javafx.collections.ObservableList;

public class Conexao {

    public Conexao() {

    }

    public ObservableList<Person> listaDeContas(int type) {
        ObservableList<Person> contas = FXCollections.observableArrayList();

        String query = "SELECT NOME,DIVIDA,PAGAMENTO,DATADV FROM " + (type==0 ? "CLIENTES" : "TABLECARNE");
        System.out.println(query);

        String url = "Jdbc:oracle:thin:@localhost:1521:xe";
        try (Connection con = DriverManager.getConnection(url, "system", "AL0921069LLUCASJL");
                PreparedStatement stm = con.prepareStatement(query);
                ResultSet rs = stm.executeQuery()) {
            Class.forName("oracle.jdbc.driver.OracleDriver");
            while (rs.next()) {
                String nome = rs.getString("NOME");
                String divida = rs.getString("DIVIDA");
                String pagamento = rs.getString("PAGAMENTO");
                String dataDv = rs.getString("DATADV");

                contas.addAll(new Person(nome, divida, pagamento, Person.validaVencimentos(dataDv, type).toString()));
            }
        } catch (Exception es) {
            es.printStackTrace();
        }

         return contas;
    }

    public static void main(String[] args) {
        new Conexao().listaDeContas(0).forEach((obs)->System.out.println(obs.getVencimento()));
    }

}

E dá esse erro:

java.sql.SQLException: Erro de ES: The Network Adapter could not establish the connection
    at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:419)
    at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:536)
    at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:228)
    at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32)
    at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:521)
    at java.sql.DriverManager.getConnection(Unknown Source)
    at java.sql.DriverManager.getConnection(Unknown Source)
    at pc.sco.sc.Conexao.listaDeContas(Conexao.java:24)
    at pc.sco.sc.Conexao.main(Conexao.java:47)
Caused by: oracle.net.ns.NetException: The Network Adapter could not establish the connection
    at oracle.net.nt.ConnStrategy.execute(ConnStrategy.java:375)
    at oracle.net.resolver.AddrResolution.resolveAndExecute(AddrResolution.java:422)
    at oracle.net.ns.NSProtocol.establishConnection(NSProtocol.java:678)
    at oracle.net.ns.NSProtocol.connect(NSProtocol.java:238)
    at oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:1054)
    at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:308)
    ... 8 more
Caused by: java.net.ConnectException: Connection refused: connect
    at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
    at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source)
    at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source)
    at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source)
    at java.net.AbstractPlainSocketImpl.connect(Unknown Source)
    at java.net.PlainSocketImpl.connect(Unknown Source)
    at java.net.SocksSocketImpl.connect(Unknown Source)
    at java.net.Socket.connect(Unknown Source)
    at oracle.net.nt.TcpNTAdapter.connect(TcpNTAdapter.java:201)
    at oracle.net.nt.ConnOption.connect(ConnOption.java:123)
    at oracle.net.nt.ConnStrategy.execute(ConnStrategy.java:353)
    ... 13 more

O que faço?

  • Você consegue acessar a tua base a partir de uma interface utilizando estes dados? um client (ex.: squirrel)?

    Felipe Pinto da Silva   25 de nov de 2015
  • Eduardo Maia lá no caso seria o banco desatualizado ou a porta que estava errada, mas a minha porta está certa e o meu banco(sql server) deve funcionar mesmo com outra versão mais atualizada(no caso o meu é 11.2 e o mais novo é 12). E Felipe re-explicando por meio do eclipse não acesso só diretamente pelo cmd.

    José Lucas   25 de nov de 2015
  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do GUJ!

2 respostas

Não é a resposta que estava procurando? Procure outras perguntas com as tags java sql banco-de-dados ou faça a sua própria pergunta.