Não consigo me conectar ao banco Sql Server

25 respostas
F
Pessoal, eu sou novo no SQL server e não estou conseguindo me coenctar ao banco... ja coloquei o driver jar no meu projeto mas está dando erro. Para utilizar o sql server é preciso deixar algum programa aberto ou só precisa está conectado ao SQL Server Management Studio ? Eu coloco localhost mesmo é?
public void conectar(){

    try {

			Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
			String connectionUrl = "jdbc:sqlserver://localhost:1433;" +
			   "databaseName=db_Service_Desk;user=admin;password=123;";
			try {

				Connection con = DriverManager.getConnection(connectionUrl);

				// executar uma query
				Statement st = (Statement) con.createStatement();
				
			 

			} catch (SQLException e) {
				// TODO Auto-generated catch block
                            System.out.println("11111");
				e.printStackTrace();
			}

		} catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
		 System.out.println("222222");
                    e.printStackTrace();
		}



	}


[b]ERRO !!!![/b]


[code]
1111111 com.microsoft.sqlserver.jdbc.SQLServerException: The TCP/IP connection to the host localhost, port 1433 has failed. Error: "Connection refused: connect. Verify the connection properties, check that an instance of SQL Server is running on the host and accepting TCP/IP connections at the port, and that no firewall is blocking TCP connections to the port.". at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:170) at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1049) at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:833) at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:716) at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:841) at java.sql.DriverManager.getConnection(DriverManager.java:582) at java.sql.DriverManager.getConnection(DriverManager.java:207) at teste_banco.Conexao_Banco.conectar(Conexao_Banco.java:34) at teste_banco.Main.main(Main.java:20) [/code]

25 Respostas

discorpio

Boa noite Felipevs.

Obviamente que você precisa instalar o gerenciador do Banco SQL (SGDB do SQL Server) na máquina onde irá rodar a aplicação ou então em Servidor remoto, bastando para isto fornecer na URL de conexão, o endereço de IP ou o nome do servidor no lugar da palavara “localhost”. Senão como o JDBC irá acessar as funções do SGDB para manipulá-lo sem ele estar instalado.

paulo1911

olá amigo vc precisa habilitar o tcp/ip para o sql server no sql server config manager.
fallow

fabioadriano3

aprovitando a duvida do nosso colega acima, gostaria de por a minha duvida tambem em questão.
pois sou totalmente novato na linguagem e estou tentando fazer a conexão com o bd MySql e não estou conseguindo.
alguem poderia me ajudar , já tenho instalado o banco de dados e o jar tmb.
a minha duvida é o que devo fazer agora ?

nel

fabioadriano3:
aprovitando a duvida do nosso colega acima, gostaria de por a minha duvida tambem em questão.
pois sou totalmente novato na linguagem e estou tentando fazer a conexão com o bd MySql e não estou conseguindo.
alguem poderia me ajudar , já tenho instalado o banco de dados e o jar tmb.
a minha duvida é o que devo fazer agora ?

Podes começar estudando JDBC :slight_smile:
Como eu sou um cara legal, estou lhe passando o link que o GUJ disponibiliza explicando JDBC.

Abraços.

F

Eu instalei o SQL server, não ja instala sozinho o SGBD não ?

fabioadriano3

muito obrigado NEL pela sua ajuda…

Aproveitando gostaria de tirar mais uma duvidas das milhôes que tenho, se possivel.

nessa parte da url

String connectionUrl = "jdbc:sqlserver://localhost:1433;" +   
               "databaseName=db_Service_Desk;user=admin;password=123;";   

               eu devo por o caminho local, tipo :
String connectionUrl = "jdbc:sqlserver://localhost:3306;+

“databaseName=aqui seria o nome do banco;user=login do banco;passord= senha do banco;”; ???

é isso mesmo.
não sei se foi claro na pergunta.

obrigado e desculpe a minha ignorancia no assunto…
eu leio leio mais não entendo nada…

nel

fabioadriano3:
muito obrigado NEL pela sua ajuda…

Aproveitando gostaria de tirar mais uma duvidas das milhôes que tenho, se possivel.

nessa parte da url

String connectionUrl = "jdbc:sqlserver://localhost:1433;" +   
               "databaseName=db_Service_Desk;user=admin;password=123;";   

               eu devo por o caminho local, tipo :
String connectionUrl = "jdbc:sqlserver://localhost:3306;+

“databaseName=aqui seria o nome do banco;user=login do banco;passord= senha do banco;”; ???

é isso mesmo.
não sei se foi claro na pergunta.

obrigado e desculpe a minha ignorancia no assunto…
eu leio leio mais não entendo nada…

SQL Server né?
Essa é a URL que eu utilizo no getConnection().

jdbc:jtds:sqlserver://<server>:<port1433>;DatabaseName=<database>

Para cada banco há uma URL especifica que deve ser utilizada. Caso não a conheça, na internet há inúmeros exemplos. Basta digitar Banco + JDBC, por exemplo.
Certo?

E sobre o autor do tópico, deveria dar como resolvido e abrir um novo na área de persistência, pois seu problema a principio é de banco de dados colega.
Abraços.

snowblacksoul

Dê uma olhada na sua porta de conexão, talvez seja diferente da 1433, no meu caso é 1026

public class ConnectionFactory {  
  
    public static Connection getConnection()throws SQLException{  
  
        try{  
            Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");  
            return DriverManager.getConnection("jdbc:sqlserver://localhost:1026;databaseName=estudo;user=####;password=******");  
  
        }catch(ClassNotFoundException e){  
            throw new SQLException(e.getMessage());  
        }  
    }  
}

abraços

snowblacksoul

Dê uma olhada na sua porta de conexão, talvez seja diferente da 1433, no meu caso é 1026

public class ConnectionFactory {  
  
    public static Connection getConnection()throws SQLException{  
  
        try{  
            Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");  
            return DriverManager.getConnection("jdbc:sqlserver://localhost:1026;databaseName=estudo;user=yyyy;password=xxxx");  
  
        }catch(ClassNotFoundException e){  
            throw new SQLException(e.getMessage());  
        }  
    }  
}

abraços

snowblacksoul

Ja adiantando
Pra pegar a porta do sql, faça o seguinte
entra no sql server configuration manager
no lado esquerdo clica em sql native client…
do lado direito clica em tcp/ip

abraços

fabioadriano3

nossa Nel muito obrigado pela sua ajuda…
espero um dia poder retribuir essa ajuda para vc ou para um novato como eu…

abraços e muito obrigado mesmo…

que as pessoas sejam assim , um ajudando o outro, pois sou um duro e se depender de dindi para pagar um curso para aprender estou ferrado rs..

abraços a todos…

F

eu acabei de olhar e tá com essa porta 1433 mas o erro continua. o nome do servidor é localhost mesmo ?
o firewall do windows tbm tá desativado

nel

felipevs:
eu acabei de olhar e tá com essa porta 1433 mas o erro continua. o nome do servidor é localhost mesmo ?
o firewall do windows tbm tá desativado

Usou a URL que eu te passei e informou os dados corretamente caro colega?
E tens certeza que configurou corretamente o banco de dados SQL Server bem como ele está iniciado?

Abraços.

F

Sim, eu testei com a sua mas ta dando esse erro:

java.sql.SQLException: No suitable driver found for jdbc:jtds:sqlserver://localhost:1433;DatabaseName= db_Service_Desk

11111

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

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

at teste_banco.Conexao_Banco.conectar(Conexao_Banco.java:33)

at teste_banco.Main.main(Main.java:20)

essa URL eu peguei com o professor, ele conectou usando essa… mas tipo… so que foi na faculdade … o banco estava no servidor.

F

não funciona =T alguém ai ta disposto a me passar o msn, crio uma conexão remota e vcs tentar conectar o banco.

marcospaulo.suporte

Tem certeza que o usuario que vc colocou pode fazer login no banco? talvez o seu sql server esteja configurado só para autenticação com o windows.

Me add ai.!
[email removido]

snowblacksoul

cara ja postei o exemplo pra vc , mas parece que nao seguiu, dê uma olhada de novo
há diferenças, bem diferentes
se a sua porta é 1433 blz
não é só isso que esta diferente

meu exemplo:

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");     
            return DriverManager.getConnection("jdbc:sqlserver://localhost:1026;databaseName=estudo;user=yyyy;password=xxxx");

seu exemplo:

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");   
            String connectionUrl = "jdbc:sqlserver://localhost:1433;" +   
               "databaseName=db_Service_Desk;user=admin;password=123;";
paulo1911

Olá amigo, remova o sql server e reinstale novamente seguindo os passos corretos detalhadamente, instale com suporte a servidor de rede, em seguinda habilite o TCP/IP do config manager, habilite as portas dinâmicas do tcp/ip e especifique a porta 1433 como default para o TCP/IP. No momento da instalação altera a senha do usuario “sa” para uma senha qualquer e deixe a autenticação em SQL server Autentication.

minha string sql server é “jdbc:sqlserver://IP_do_HOST:1433;DatabaseName=databaseName” mas eu uso JPA…

Fallow

RafaelCassau

Boa tarde felipevs seguinte, vc copiou essa classe de coxexão da faculdade e esta tentando utilizar na sua casa?
se for vc tem que criar um Database do SQLServer e depois citar ela em DatabaseName na String de conexão, lembrando que tambem deve passar o seu usuario e senha que definiu, se ainda sim tiver duvidas procura um tutorial de como instalar o SQLServer corretamente geralmente esses tutorias você encontra no site da MSDN. depois de refeito sua instalação tente novamente realizar a conexão, se não conseguir poste o erro novamente, abraços!

marcospaulo.suporte

Bom, pra testar a conexão, vc pode testar pelo ‘odbc’ … se conseguir fazer uma conexão lá… prova que a conexão está liberada, ai é erro no script seu mesmo.
ai vc tira da duvida …

F

snowblacksoul
Te add no msn.

marcospaulo.suporte

felipevs:
snowblacksoul
Te add no msn.

Ainda nao veio o convite cara…

Já tentou fazer uma conexão odbc com o banco?

F

me add: [email removido]

snowblacksoul

e ae conseguiu?!

Grinvon

Se você o instalou em sua máquina, sendo o client e server nela, você precisa checar a configuração dos serviços. Assim que é instalado o SQL Server, nem todos os serviços ficam automaticamente ligados, veja isso.

Criado 28 de junho de 2011
Ultima resposta 30 de jun. de 2011
Respostas 25
Participantes 9