Olá pessoal, estou com um problema ao tentar criar uma ponte JDBC-ODBC para acessar um banco de uma fonte de dados ODBC (Que no caso essa fonte seria do banco SYBASE 9)
Estou usando o seguinte código:
package Conexao;
import java.sql.*;
import javax.swing.JOptionPane;
public class AcessoDominio {
final private String driver = "sun.jdbc.odbc.JdbcOdbcDriver";
final private String url = "jdbc.odbc:sybase";
final private String usuario = "Externo";
final private String senha = "123456";
private Connection conexao; //Cria a conexão propriamente dita
public Statement statement; //Abre caminho para a conexão com o banco de dados
public ResultSet resultset; //Armazena os resultados das consultas SQL
}
Acho que você está copiando isso de um livro, não? É que você usou “jdbc PONTO odbc” em vez de “jdbc DOIS PONTOS odbc”, ou seja, “jdbc:odbc:sybase”.
Tome mais cuidado ao copiar os exemplos. Você tem uma apostila para saber o que vai nesse parâmetro? (Dica: não é o nome do fornecedor de banco de dados (Sybase) e sim o nome da fonte de dados ODBC cadastrada no Painel de Controle.)
Mesmo usando o Sybase apenas como fonte, é mais rápido e mais eficiente se você usar o driver do próprio Sybase, ou então o JTDS, em vez de usar o ODBC, que tem muitas limitações. Para ter uma idéia de como o ODBC é tosco, experimente acessar os campos de um registro retornado por uma query fora da ordem. Pode ser que você tenha problemas.
Agora vocês saberiam me informar onde posso achar o driver do Sybase e um driver do Firebird bom, pois o que eu uso do firebird quando tento usar o comando first(); ele dá um erro: Result set is TYPE_FORWARD_ONLY