Erro ao conectar no banco de dados - Oracle

Pessoal, eu estava fazendo uma aplicao local, usando java + tomcat + MySQL … tudo funcionando, mas agora preciso fazer essa mesma aplicacao acessar um banco de dados em outra maquina, banco de dados oracle e estou recebendo erros. Fiz uma classe, soh para testar a conexao jah estou com erro, segue

erro

Conectando ao banco Exception in thread "main" java.sql.SQLException: [Microsoft][ODBC Driver Manager] Nome da fonte de dados não encontrado e nenhum driver padrão especificado at sun.jdbc.odbc.JdbcOdbc.createSQLException(JdbcOdbc.java:6957) at sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:7114) at sun.jdbc.odbc.JdbcOdbc.SQLDriverConnect(JdbcOdbc.java:3073) at sun.jdbc.odbc.JdbcOdbcConnection.initialize(JdbcOdbcConnection.java:323) at sun.jdbc.odbc.JdbcOdbcDriver.connect(JdbcOdbcDriver.java:174) at java.sql.DriverManager.getConnection(DriverManager.java:582) at java.sql.DriverManager.getConnection(DriverManager.java:185) at seplag.bernardo.jdbc.ConnectionFactory.getConnection(ConnectionFactory.java:14) at seplag.bernardo.jdbc.TestaConexao.main(TestaConexao.java:9)

classe para testar conexao

[code]package seplag.bernardo.jdbc;

import java.sql.Connection;
import java.sql.SQLException;

public class TestaConexao {

public static void main(String[] args) throws SQLException, ClassNotFoundException {
	Connection con = ConnectionFactory.getConnection();
	con.close();
}

}
[/code]

classe de conexao

[code]package seplag.bernardo.jdbc;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class ConnectionFactory {
public static String banco = “banco”;
public static String usuario = “usuario”;
public static String senha = “senha”;
public static Connection getConnection() throws SQLException, ClassNotFoundException {
Class.forName(“oracle.jdbc.driver.OracleDriver”);
System.out.println(“Conectando ao banco”);
return DriverManager.getConnection(
“jdbc:odbc:thin:@ip:porta:” + banco, usuario, senha);
}
}[/code]

eu jah adicionei o ojdbc14.jar dentro do lib da aplicacao

Tente um return assim:

return DriverManager.getConnection( "jdbc:oracle:thin:@ip:porta:" + banco, usuario, senha);

o erro mudou :slight_smile: … hehe bom sinal

erro

Exception in thread "main" java.sql.SQLException: Exceção de E/S: Connection refused(DESCRIPTION=(TMP=)(VSNNUM=169869568)(ERR=12505)(ERROR_STACK=(ERROR=(CODE=12505)(EMFI=4)))) at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134) at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179) at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:333) at oracle.jdbc.driver.OracleConnection.<init>(OracleConnection.java:404) at oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.java:468) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:314) at java.sql.DriverManager.getConnection(DriverManager.java:582) at java.sql.DriverManager.getConnection(DriverManager.java:185) at seplag.bernardo.jdbc.ConnectionFactory.getConnection(ConnectionFactory.java:14) at seplag.bernardo.jdbc.TestaConexao.main(TestaConexao.java:11)

vlw cara, consegui acessar o banco

[]'s

eu vou te explorar um pouco :smiley:
nunca mechi com o oracle soh postgree e MySQL. voce pode me dar um link para uma pagina com todos os operadores da linguagem

nesse caso em especifico estou procurando um operador que substitua a linha
“DATEDIFF(CURDATE(),TRA.DAT_TRAMITE_TRA) AS atrasoSolicitacao,”
jah que DATEDIFF e CURDATE sao funcoes do mysql que nao existem no oracle.

consulta MySQL

SELECT SOL.PK_SEQ_SOLICITACAO_SOL AS `numSolicitacao`, TRA.DAT_TRAMITE_TRA AS `dataSolicitacao`, DATEDIFF(CURDATE(),TRA.DAT_TRAMITE_TRA) AS `atrasoSolicitacao`, SOL.DSC_SOLICITACAO_SOL AS `descSolicitacao`, TEC.TXT_NOME_TEC AS `respSolicitacao` FROM tb_solicitacao_sol AS SOL , tb_tramite_tra AS TRA , tb_tecnico_tec AS TEC , tb_categoria_cat AS CAT , tb_responsavel_res AS RES , tb_status_sta as STA WHERE SOL.fk_seq_categoria_cat = CAT.pk_seq_categoria_cat AND RES.fk_seq_categoria_cat = CAT.pk_seq_categoria_cat AND RES.fk_seq_tecnico_tec = TEC.pk_seq_tecnico_tec AND TRA.fk_seq_solicitacao_sol = SOL.pk_seq_solicitacao_sol AND TRA.fk_seq_status_sta = STA.pk_seq_status_sta AND STA.pk_seq_status_sta = 3

Consulta Oracle

SELECT SOL.PK_SEQ_SOLICITACAO_SOL numSolicitacao , TRA.DAT_TRAMITE_TRA dataSolicitacao , DATEDIFF(CURDATE(),TRA.DAT_TRAMITE_TRA) atrasoSolicitacao , SOL.DSC_SOLICITACAO_SOL descSolicitacao , TEC.TXT_NOME_TEC respSolicitacao FROM ADM_SRA.tb_solicitacao_sol SOL , ADM_SRA.tb_tramite_tra TRA , ADM_SRA.tb_tecnico_tec TEC , ADM_SRA.tb_categoria_cat CAT , ADM_SRA.tb_responsavel_res RES , ADM_SRA.tb_status_sta STA WHERE SOL.fk_seq_categoria_cat = CAT.pk_seq_categoria_cat AND RES.fk_seq_categoria_cat = CAT.pk_seq_categoria_cat AND RES.fk_seq_tecnico_tec = TEC.pk_tecnico_tec AND TRA.fk_seq_solicitacao_sol = SOL.pk_seq_solicitacao_sol AND TRA.fk_seq_status_sta = STA.pk_seq_status_sta AND STA.pk_seq_status_sta = 4

qual foi a resolução do erro?