[ Erro em Conexão com o SQL Server

2 respostas
D

Salve caros parceiros,

Sou iniciante em JAVA, e estou montando uma conexão para inserir dados no MSSQL server.

Copiei a rotina abaixo do próprio site da Microsoft:

// Estou colocando a rotina e o erro em vermelho

[color=red]import java.*;

public class ConectaBD {

private java.sql.Connection  con = null;

private final String url = jdbc:microsoft:sqlserver://”;

private final String serverName= 127.0.0.1;

private final String portNumber = 80;

private final String databaseName = AgSql;

private final String userName = sa;

private final String password = francauto;

// Informs the driver to use server a side-cursor,

// which permits more than one active statement

// on a connection.

private final String selectMethod = cursor;
// Constructor
 public ConectaBD(){}
 
 private String getConnectionUrl(){
      return url+serverName+":"+portNumber+";databaseName="+databaseName+";selectMethod="+selectMethod+";";
 }
 
 private java.sql.Connection getConnection(){
      try{
           Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); 
           con = java.sql.DriverManager.getConnection(getConnectionUrl(),userName,password);
           if(con!=null) System.out.println("Connection Successful!");
      }catch(Exception e){
           e.printStackTrace();
           System.out.println("Error Trace in getConnection() : " + e.getMessage());
     }
      return con;
  }

 /*
      Display the driver properties, database details 
 */ 

 public void displayDbProperties(){
      java.sql.DatabaseMetaData dm = null;
      java.sql.ResultSet rs = null;
      try{
           con= this.getConnection();
           if(con!=null){
                dm = con.getMetaData();
                System.out.println("Driver Information");
                System.out.println("\tDriver Name: "+ dm.getDriverName());
                System.out.println("\tDriver Version: "+ dm.getDriverVersion ());
                System.out.println("\nDatabase Information ");
                System.out.println("\tDatabase Name: "+ dm.getDatabaseProductName());
                System.out.println("\tDatabase Version: "+ dm.getDatabaseProductVersion());
                System.out.println("Avalilable Catalogs ");
                rs = dm.getCatalogs();
                while(rs.next()){
                     System.out.println("\tcatalog: "+ rs.getString(1));
                } 
                rs.close();
                rs = null;
                closeConnection();
           }else System.out.println("Error: No active Connection");
      }catch(Exception e){
           e.printStackTrace();
      }
      dm=null;
 }     
 
 private void closeConnection(){
      try{
           if(con!=null)
                con.close();
           con=null;
      }catch(Exception e){
           e.printStackTrace();
      }
 }
 /// Inicio do Teste da Classe
 
 public static void main(String[] args) throws Exception
   {
      ConectaBD myDbTest = new ConectaBD();
     ///System.out.println("My actual class path is " + System.getProperty("java.class.path") );
      
      
      myDbTest.displayDbProperties();
   }

} // do final da classe[/color]

Porém quando tento executar, ele fica uns 10 minutos parados e me dá o erro:

[color=“red”][color=brown]java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Connection reset

at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)

at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)

at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)

at com.microsoft.jdbc.sqlserver.tds.TDSRequest.processReply(Unknown Source)

at com.microsoft.jdbc.sqlserver.SQLServerImplConnection.open(Unknown Source)

at com.microsoft.jdbc.base.BaseConnection.getNewImplConnection(Unknown Source)

at com.microsoft.jdbc.base.BaseConnection.open(Unknown Source)

at com.microsoft.jdbc.base.BaseDriver.connect(Unknown Source)

at java.sql.DriverManager.getConnection(DriverManager.java:512)

at java.sql.DriverManager.getConnection(DriverManager.java:171)

at ConectaBD.getConnection(ConectaBD.java:37)

at ConectaBD.displayDbProperties(ConectaBD.java:54)

at ConectaBD.main(ConectaBD.java:95)

Error Trace in getConnection() : [Microsoft][SQLServer 2000 Driver for JDBC]Connection reset

Error: No active Connection[/color][/color]

Que devo fazer para que esta conexão fique válida ?

obrigado

Dory Edson.

2 Respostas

D

tenta trocar a sua prota, eu ao menos nunca vi banco se conectar na porta 80.
Tenta assim: sqlserver://localhost:1433

porta 1433 é a default do SQL Server, senão rolar é só falar que vou olhar melhor o seu código amanhã cedo.
[]'s

D

Exatamente, o q pode estar ocorrendo é que a porta deve estar errada como disse o diogocl ou então caso realmente seu mssql esteja na porta 80, verifique se o ip está correto e se o servido SQLSERVER está ativo e rodando.

“diogoacl”:
tenta trocar a sua prota, eu ao menos nunca vi banco se conectar na porta 80.
Tenta assim: sqlserver://localhost:1433

porta 1433 é a default do SQL Server, senão rolar é só falar que vou olhar melhor o seu código amanhã cedo.
[]'s

Criado 4 de outubro de 2004
Ultima resposta 4 de out. de 2004
Respostas 2
Participantes 3