Erro na tentativa de conexão com o SQLServer 2008

Olá, pessoal!!
Minhas tentativas de conexão com o SQLServer estão dando o seguinte erro: [Microsoft][ODBC Driver Manager] Comprimento inválido da cadeia de caracteres ou buffer

o erro ocorre na linha 14.

Detalhe: a classe roda normal no Windows XP, isso está ocorrendo só quando tento rodar no Windows 7

Preciso descobrir o que está ocorrendo. Se alguém puder ajudar fico muito agradecido!!

[code]import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class Conexao {

private Connection connection;

public Conexao(){

    try{
        Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
        String url = "jdbc:odbc:bd_java";
        connection = DriverManager.getConnection(url);

        System.out.println("conexao ok ********");
    }
    catch(ClassNotFoundException e){
        System.out.println(" **** de Conexao: " +e.getMessage());
    }
    catch(SQLException e){
	e.printStackTrace();
        //System.out.println(" **** de Conexao: " +e.getMessage());
    }
}

public Connection getConnection() {
    return connection;
}

public static void main(String[] a){
	new Conexao();
}

}
[/code]

Rafael,

vê se ajuda:

http://www.guj.com.br/java/221519-formulario-e-sql
http://www.guj.com.br/java/227462-exibir-dados/2

att,

pedruhenrik, obrigado, eu li os dois tópicos, mas não ajudou muito. No primeiro link, a classe de conexão do Anderson está praticamente igual a minha e não ficou claro como o problema do java.sql.SQLException: [Microsoft][ODBC Driver Manager] Comprimento inválido de cadeia de caracteres ou de buffer fora resolvido.

No segundo post, embora fosse o mesmo erro, ele resolveu mudando o Driver de conexão porque estava usando o MySQL. Mas no meu caso não dá, porque estou usando o SQLServer e preciso fazer a conexão via JDBC.

O que mais me intriga é que a mesma classe está rodando no WindowsXP, mas não executa no Windows 7.

estou meio perdido xD…

isso realmente é intrigante.

somos 2 hahaha

já experimentou o driver jtds???

eu só conseguia conectar com ele, não lembro pq…

boa sorte!

att,

pelo visto muitas outras pessoas tiveram o problema do Mircrosoft Driver Manager Invalid String or Buffer Length JDBC ODBC como aqui por exemplo: http://www.coderanch.com/t/491407/JDBC/java/Mircrosoft-Driver-Manager-Invalid-String onde o problema é idêntico.

É uma questão nativa do Windows 7 64 bit

por enquanto, para quem tiver o mesmo problema, as únicas soluções são ou trocar de sgbd ou trocar de driver, utilizando o jtds-1.2.5, por exemplo, como eu fiz.

abraços.

Rafael Nascimento tbm estou com o mesmo problema. :?
Uso Netbeans 7.2, Win7 e jdk6…

    static public Connection getConnection() {

        try {

            Class.forName("net.sourceforge.jtds.jdbc.Driver");
            String url     = "jdbc:jtds:sqlserver://localhost:1433/meuBanco";
            String user = "";
            String password = "";
            conexao = DriverManager.getConnection(url, user, password);

        } catch (ClassNotFoundException erroDriver) {
            
            System.out.println("DRIVER NÃO ENCONTRADO.");
            System.out.println(erroDriver);
        } catch (SQLException erroConexao) {
            
            System.out.println("ERRO NA CONEXÃO DO BANCO DE DADOS JTDS");
            System.out.println(erroConexao);
        } 
        
        if (conexao != null) {
            
            System.out.println("CONEXÃO COM JTDS REALIZADA COM SUCESSO!");   
        }
        
        return conexao;
    }

Ao criar a conexão pelo Netbeans ele acusa que o driver é inválido e mostra a msg: failed
Por favor poderia me ajudar? Obrigado :thumbup: