JDBC só funciona em modo deBug

3 respostas
L

Por favor, alguém pode me explicar porquê o eclipse só funciona em modo de debug quando vou inserir dados no banco de dados?

Utilizo Sistema Operacional Windows 7, 64 bits.
Eclipse Java EE IDE for Web Developers. Juno Service Release 2

O mesmo projeto quando executo em uma outra máquina qualquer que não esteja com windows 7, 64bits funciona.

3 Respostas

Ataxexe

Porque você está fazendo alguma coisa errada.

Se você postar seu código e as mensagens de erro poderemos te ajudar a descobrir o que está errado.

L
O erro é o seguinte
java.sql.SQLException: [Microsoft][ODBC Driver Manager] Comprimento inválido de cadeia de caracteres ou de buffer
	at sun.jdbc.odbc.JdbcOdbc.createSQLException(Unknown Source)
	at sun.jdbc.odbc.JdbcOdbc.standardError(Unknown Source)
	at sun.jdbc.odbc.JdbcOdbc.SQLGetDataString(Unknown Source)
	at sun.jdbc.odbc.JdbcOdbcResultSet.getDataString(Unknown Source)
	at sun.jdbc.odbc.JdbcOdbcResultSet.getString(Unknown Source)
	at sun.jdbc.odbc.JdbcOdbcConnection.buildTypeInfo(Unknown Source)
	at sun.jdbc.odbc.JdbcOdbcConnection.initialize(Unknown Source)
	at sun.jdbc.odbc.JdbcOdbcDriver.connect(Unknown Source)
	at java.sql.DriverManager.getConnection(Unknown Source)
	at java.sql.DriverManager.getConnection(Unknown Source)
	at Conexao.abrirConexaoSqlServer(Conexao.java:60)
	at Conexao.abrirConexao(Conexao.java:30)
	at Conexao.executarComando(Conexao.java:103)
	at Aluno.inserirAluno(Aluno.java:15)
	at Main.main(Main.java:9)
O olhe o código, Conexao Sql
public boolean abrirConexaoSqlServer()
    {
        try
            {
                String drv = "sun.jdbc.odbc.JdbcOdbcDriver";      // driver a ser utilizado
                String url = "jdbc:odbc:ConexaoAluno";             // nome da fonte de dados - ODBC 
                Class.forName(drv);                                        //carrega o driver que será utilizado pela aplicação                       
                con = DriverManager.getConnection(url,"sa","senha");    //estabelece a conexão
                return true;                                             
                                                                                     
            }    
            catch(Exception er1)
            {               
                return false;
            }  
        
    }
Método de Inserção.
public void inserirAluno(){
		Conexao objConexao = new Conexao();
		try {
			objConexao.executarComando("insert into aluno values('"+this.nome+"',"+this.idade+")");
			
		} catch (Exception e) {
			System.out.println("Erro: "+e.getMessage());
		}finally{
			objConexao.fecharConexao();
		}
		
	}
main
public static void main(String[] args) {
		
		Aluno aluno = new Aluno();
		
		aluno.nome = "lucas";
		aluno.idade = 20;
		aluno.inserirAluno();
	
		
	}
L

Tentei utilizar o drive JTDS mas não consegui faze-lo funcionar… Não sei o porque…

Criado 13 de junho de 2013
Ultima resposta 13 de jun. de 2013
Respostas 3
Participantes 2