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]
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: