🧚 Escute! O Beekeeper Studio é uma GUI de banco de dados rápida, moderna e open source Baixar
23 de setembro de 2024 Por Matthew Rathbone

O que é uma connection string JDBC?

Uma connection string JDBC é uma URL que especifica o host do banco de dados, a porta e outros parâmetros necessários para se conectar a um banco de dados SQL Server. Essa string fornece todas as informações que o driver JDBC precisa para estabelecer a conexão.

Estrutura básica de uma connection string JDBC para SQL Server

O formato geral de uma connection string JDBC para SQL Server é este:

jdbc:sqlserver://[serverName[\instanceName][:portNumber]];[property=value[;property=value]]
  • jdbc:sqlserver:// - O protocolo usado em uma conexão JDBC.
  • serverName - O nome ou endereço IP do servidor que hospeda a instância do SQL Server.
  • instanceName (opcional) - A instância específica do SQL Server.
  • portNumber (opcional) - A porta de conexão. O padrão é 1433.
  • property=value - Propriedades adicionais para configurar a conexão (como nome do banco de dados, dados de autenticação etc.).

Se você trabalha com PostgreSQL, confira nosso PostgreSQL JDBC URL Builder para montar connection strings com facilidade.

Exemplo: connection string JDBC mínima

String connectionUrl = "jdbc:sqlserver://localhost:1433;";

Esta é a forma mais simples de uma connection string, em que:

  • O servidor de banco de dados está hospedado localmente.
  • A porta é a padrão do SQL Server, 1433.

Exemplo: connection string JDBC completa

Para uma configuração mais detalhada, considere um cenário em que você quer se conectar a uma instância nomeada em um servidor remoto, com credenciais e banco de dados específicos:

String connectionUrl = "jdbc:sqlserver://192.168.1.100\\SQLExpress:1433;"
                     + "databaseName=MyDatabase;"
                     + "user=myUsername;"
                     + "password=myPassword;";

Veja o que cada parte significa:

  • 192.168.1.100\\SQLExpress:1433 - Conecta à instância SQLExpress no servidor 192.168.1.100 usando a porta 1433.
  • databaseName=MyDatabase - Conecta ao banco de dados específico chamado MyDatabase.
  • user=myUsername e password=myPassword - São as credenciais usadas na autenticação.

Exemplo com Autenticação Integrada do Windows

Se o seu SQL Server estiver configurado para usar a Autenticação do Windows, você pode usar o parâmetro integratedSecurity:

String connectionUrl = "jdbc:sqlserver://localhost:1433;"
                     + "databaseName=MyDatabase;"
                     + "integratedSecurity=true;";

Isso faz o driver usar as credenciais do Windows do usuário atualmente logado para a autenticação.

Conectando com o driver JDBC

Para usar a connection string em uma aplicação Java, você precisa carregar o driver JDBC do SQL Server e estabelecer uma conexão. Abaixo está um exemplo completo de um programa Java que se conecta ao SQL Server usando JDBC:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

public class SQLServerConnection {
    public static void main(String[] args) {
        String connectionUrl = "jdbc:sqlserver://localhost:1433;"
                             + "databaseName=MyDatabase;"
                             + "user=myUsername;"
                             + "password=myPassword;";

        try {
            // Load the SQL Server JDBC driver
            Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

            // Establish the connection
            Connection con = DriverManager.getConnection(connectionUrl);

            // Create and execute a basic SQL query
            String SQL = "SELECT * FROM Customers";
            Statement stmt = con.createStatement();
            ResultSet rs = stmt.executeQuery(SQL);

            // Iterate through the result set and print the data
            while (rs.next()) {
                System.out.println(rs.getString("CustomerID") + " - " + rs.getString("CustomerName"));
            }

            // Close the resources
            rs.close();
            stmt.close();
            con.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

Saída esperada:

Supondo que você tenha uma tabela Customers no seu banco de dados, executar o código acima vai exibir os IDs e nomes dos clientes assim:

1 - John Doe
2 - Jane Smith
3 - Alice Johnson

Parâmetros comuns da connection string

Propriedade Descrição
databaseName Nome do banco de dados ao qual se conectar.
user Nome de usuário para o login no SQL Server.
password Senha para o login no SQL Server.
integratedSecurity Se true, ativa a autenticação do Windows.
encrypt Se true, força a criptografia da conexão.
trustServerCertificate Se true, confia no certificado do SQL Server sem validação.

Solução de problemas de conexão

URL de conexão inválida

Se você encontrar um erro como:

com.microsoft.sqlserver.jdbc.SQLServerException: The connection string contains a badly formed name or value.

Verifique se a connection string segue o formato correto e se não há ponto e vírgula (;) ou sinais de igual (=) fora do lugar.

Porta não está escutando

Se você receber um erro indicando que a conexão foi recusada, verifique se:

  • A instância do SQL Server está em execução.
  • A porta especificada está aberta e escutando.

Você pode verificar em qual porta o SQL Server está escutando executando esta query no SQL Server:

SELECT DISTINCT local_net_address, local_tcp_port 
FROM sys.dm_exec_connections
WHERE local_net_address IS NOT NULL;

Driver não encontrado

Se você vir um erro como:

java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver

Verifique se você adicionou o driver JDBC do SQL Server ao classpath do seu projeto. Você pode baixar o driver no site da Microsoft.

Conclusão

Configurar uma conexão JDBC com o SQL Server é simples depois que você entende a estrutura da connection string. Este tutorial cobriu o essencial, incluindo connection strings básicas e avançadas, como integrar a connection string em uma aplicação Java e algumas dicas comuns de solução de problemas.

Beekeeper Studio é um cliente de banco de dados gratuito e open source

A melhor ferramenta de consultas e edição de SQL que já usei. Tem tudo o que preciso para gerenciar meu banco de dados. - ⭐⭐⭐⭐⭐ Mit

O Beekeeper Studio é rápido, intuitivo e fácil de usar. Ele suporta vários bancos de dados e funciona muito bem no Windows, Mac e Linux.

A versão do Beekeeper para Linux tem 100% dos recursos, sem atalhos e sem concessões.

O que os usuários dizem sobre o Beekeeper Studio

★★★★★
"O Beekeeper Studio substituiu completamente meu antigo fluxo de trabalho com SQL. É rápido, intuitivo e torna o trabalho com bancos de dados agradável de novo."
— Alex K., Desenvolvedor de Banco de Dados
★★★★★
"Já testei muitas GUIs de banco de dados, mas o Beekeeper encontra o equilíbrio perfeito entre recursos e simplicidade. Simplesmente funciona."
— Sarah M., Engenheira Full Stack

Pronto para melhorar seu fluxo de trabalho com SQL?

download Baixar grátis