Conectar-se a um banco de dados no Visual Studio

As etapas neste artigo mostram como se conectar a uma fonte de dados no IDE do Visual Studio. A fonte de dados pode ser um banco de dados local, um serviço de dados online ou um banco de dados aberto de um .mdf arquivo. Você pode trabalhar diretamente com seus dados no Visual Studio. Você pode executar consultas, editar dados, criar e editar tabelas e outras propriedades de esquema, editar funções e procedimentos armazenados, gatilhos e assim por diante. Essas funções são independentes da linguagem de programação ou da versão do .NET que você está usando.

Se estiver trabalhando com um banco de dados do Access (arquivo .accdb), consulte Conectar-se a um banco de dados do Access em aplicativos do NET Framework.

Gerenciador de Servidores e Pesquisador de Objetos do SQL Server

Você pode abrir uma conexão com um banco de dados ou serviço, um banco de dados LocalDB aberto de um arquivo .mdf e exibir e editar tabelas e linhas de dados usando o Gerenciador de Servidores ou o Pesquisador de Objetos do SQL Server. A funcionalidade dessas janelas se sobrepõe até certo ponto. As diferenças básicas são:

  • Gerenciador de Servidores

    Ela é instalada por padrão no Visual Studio. Pode ser usada para testar conexões e exibir bancos de dados do SQL Server, quaisquer outros bancos de dados que tenham um provedor ADO.NET instalado e alguns serviços do Azure. Também mostra objetos de baixo nível, como contadores de desempenho do sistema, logs de eventos e filas de mensagens. Se uma fonte de dados não tiver provedor ADO.NET, ela não aparecerá aqui, mas você ainda poderá usá-la no Visual Studio conectando-se programaticamente.

  • Gerenciador de Nuvem

    Instale essa janela manualmente como uma extensão do Visual Studio no Visual Studio Marketplace. Fornece uma funcionalidade especializada para explorar e se conectar aos serviços do Azure.

  • Pesquisador de Objetos do SQL Server

    Instalada com SQL Server Data Tools e visível no menu Exibir. Se não estiver lá, acesse Programas e Recursos no Painel de Controle, localize o Visual Studio e selecione Alterar para executar novamente o instalador depois de marcar a caixa de seleção para SQL Server Data Tools. Use o Pesquisador de Objetos do SQL Server para exibir bancos de dados SQL (se eles tiverem um provedor de ADO.NET), criar novos bancos de dados, modificar esquemas, criar procedimentos armazenados, recuperar cadeias de conexão, exibir os dados e muito mais. Os bancos de dados SQL que não têm provedor ADO.NET instalado não aparecerão aqui, mas você ainda pode se conectar a eles programaticamente.

Você pode abrir uma conexão com um banco de dados ou serviço, ou um banco de dados LocalDB aberto de um arquivo .mdf e exibir e editar tabelas e linhas de dados usando o Gerenciador de Servidores ou o Pesquisador de Objetos do SQL Server. A funcionalidade dessas janelas se sobrepõe até certo ponto. As diferenças básicas são:

  • Gerenciador de Servidores

    Ela é instalada por padrão no Visual Studio. Pode ser usada para testar conexões e exibir bancos de dados do SQL Server, quaisquer outros bancos de dados que tenham um provedor ADO.NET instalado e alguns serviços do Azure. Também mostra objetos de baixo nível, como contadores de desempenho do sistema, logs de eventos e filas de mensagens. Se uma fonte de dados não tiver provedor ADO.NET, ela não aparecerá aqui, mas você ainda poderá usá-la no Visual Studio conectando-se programaticamente.

  • Pesquisador de Objetos do SQL Server

    Instalada com SQL Server Data Tools e visível no menu Exibir. Se não estiver lá, acesse Programas e Recursos no Painel de Controle, localize o Visual Studio e selecione Alterar para executar novamente o instalador depois de marcar a caixa de seleção para SQL Server Data Tools. Use o Pesquisador de Objetos do SQL Server para exibir bancos de dados SQL (se eles tiverem um provedor de ADO.NET), criar novos bancos de dados, modificar esquemas, criar procedimentos armazenados, recuperar cadeias de conexão, exibir os dados e muito mais. Os bancos de dados SQL que não têm provedor ADO.NET instalado não aparecerão aqui, mas você ainda pode se conectar a eles programaticamente.

Adicionar uma conexão ao Gerenciador de Servidores

Para criar uma conexão com o banco de dados, clique no ícone Conectar a um banco de dados no Gerenciador de Servidores ou clique com o botão direito do mouse no Gerenciador 1de Servidores no nó Conexões de Dados e selecione Adicionar Conexão. Aqui, você pode abrir uma conexão com um banco de dados LocalDB aberto em um arquivo .mdf, conectar-se a um banco de dados em outro servidor, um serviço do SharePoint ou um serviço do Azure.

Captura de tela mostrando o ícone Nova Conexão do Gerenciador de Servidores.

Captura de tela mostrando o ícone Conectar-se ao Banco de Dados do Gerenciador de Servidores.

Isso abre a caixa de diálogo Adicionar Conexão. Aqui, inserimos o nome da instância SQL Server LocalDB, (localdb)\MSSqlLocalDB, que geralmente é instalada com o Visual Studio.

Se você não tiver acesso a outro banco de dados e não vir o LocalDB instalado, poderá instalar o LocalDB por meio do Instalador do Visual Studio, como parte da carga de trabalho Armazenamento e processamento de dados, a carga de trabalho Desenvolvimento da ASP.NET e da Web ou como um componente individual. Consulte Modificar o Visual Studio.

Captura de tela da caixa de diálogo Adicionar Nova Conexão.

Captura de tela da caixa de diálogo Adicionar Nova Conexão.

No Visual Studio 2022 versão 17.8 e posterior, a caixa de diálogo inclui duas novas opções (Criptografar and Certificado do Servidor Confiável) que entram na cadeia de conexão e afetam as configurações de segurança usadas para sua conexão. Essas opções dão suporte aos recursos de segurança mais rigorosos do driver de banco de dados Microsoft.Data.SqlClient 4.0. Confira Alterações no comportamento de validação de certificado e criptografia.

A prática de segurança recomendada é usar criptografia e instalar um certificado no servidor para ele. Confira Criptografia e validação de certificado. Para recusar essa segurança aprimorada, defina Criptografar como Opcional (Falso).

Se você não definir Criptografar como opcional com o Visual Studio 17.8 ou posterior, que usa a versão 4.0 do Microsoft.Data.SqlClient, a criptografia usa obrigatório como padrão. Essa é uma alteração significativa do comportamento em versões anteriores. Se você não tiver um certificado válido ou não escolher o Certificado de Servidor Confiável, você receberá a seguinte mensagem de erro:

A criptografia foi habilitada nessa conexão, revise sua configuração de SSL e certificado para o SQL Server de destino ou ative "Confiar no certificado do servidor" na caixa de diálogo de conexão.

Informações adicionais

Uma conexão com o servidor foi estabelecida com êxito, mas ocorreu um erro durante o processo de logon. (provedor: provedor SSL, erro: 0 – a cadeia de certificados foi emitida por uma autoridade que não é confiável.) (Microsoft SQL Server)

Tipos de autenticação

Você pode escolher entre uma variedade de tipos de autenticação que abrangem uma ampla gama de cenários. Para obter detalhes, confira os tipos de autenticação.

No Visual Studio 17.8 e posterior, os nomes das opções de autenticação para conexões SQL foram atualizados para refletir a alteração de nome do Active Directory para o Microsoft Entra.

Captura de tela mostrando os tipos de autenticação do Visual Studio 17.8 e mais recente.

Abrir um arquivo de banco de dados MDF

O arquivo .mdf significa Arquivo de Banco de Dados Mestre e é um banco de dados SQL empacotado em um arquivo. Esses arquivos têm um .ldf (Arquivo de Banco de Dados de Log) associado que contém os logs desse banco de dados. Você pode criar bancos de dados armazenados em arquivos .mdf adicionando um item de Banco de Dados baseado em serviço ao projeto. Confira Criar um banco de dados e adicionar tabelas.

Se você já tiver um arquivo .mdf no projeto, clique duas vezes ou clique com o botão direito do mouse e escolha Abrir para abri-lo no Gerenciador de Servidores.

Para abrir um arquivo .mdf que não está em seu projeto no Gerenciador de Servidores do Visual Studio, siga estas etapas:

  1. Na caixa de diálogo Adicionar conexão, em Fonte de Dados, escolha Arquivo de Banco de Dados do Microsoft SQL Server (SqlClient).

  2. Use o botão Procurar para localizar e selecionar o arquivo de banco de dados mestre (arquivo .mdf) ou insira o caminho na caixa Nome do arquivo de banco de dados.

    Captura de tela mostrando a caixa de diálogo Adicionar Conexão, conectando-se a um arquivo de Banco de Dados SQL.

  3. Escolha um método de autenticação.

  4. Teste a conexão e, se for bem-sucedida, escolha OK. Um nó do banco de dados é aberto no Gerenciador de Servidores.

Alterar o provedor

Se a fonte de dados não for o que você deseja, clique no botão Alterar para escolher uma nova fonte de dados ou um novo provedor de dados ADO.NET. O novo provedor pode solicitar suas credenciais, dependendo de como você o configurou.

Observação

Se você estiver usando o Visual Studio 2022 para se conectar a provedores de dados OLEDB ou ODBC, precisará estar ciente de que o Visual Studio 2022 agora é um processo de 64 bits.

Isso significa que algumas das ferramentas de dados do Visual Studio não poderão se conectar a bancos de dados OLEDB ou ODBC usando provedores de dados de 32 bits. Isso inclui o provedor de dados OLEDB de 32 bits do Microsoft Access, bem como outros provedores de 32 bits de terceiros.

Se você precisar manter aplicativos de 32 bits que se conectam ao OLEDB ou ao ODBC, você ainda poderá criar e executar o aplicativo com o Visual Studio 2022. No entanto, se você precisar usar qualquer uma das Ferramentas de Dados do Visual Studio, como o Gerenciador de Servidores, o Assistente de Fonte de Dados ou o Designer de Conjunto de Dados, você precisará usar uma versão anterior do Visual Studio que ainda seja um processo de 32 bits. A última versão do Visual Studio que foi um processo de 32 bits foi o Visual Studio 2019.

Se você planeja converter o projeto para que seja de 64 bits, precisará atualizar as conexões de dados OLEDB e ODBC para usar provedores de dados de 64 bits.

Se seu aplicativo usa bancos de dados do Microsoft Access e pode converter o projeto para 64 bits, é recomendável que você use o Mecanismo de Banco de Dados do Microsoft Access de 64 bits, também chamado ACE (Mecanismo de Banco de Dados do Access). Confira Provedor OLE DB para Jet e Driver ODBC são versões exclusivas de 32 bits para obter mais informações.

Se você estiver usando um provedor de dados de terceiros, recomendamos entrar em contato com seu fornecedor para ver se ele poder oferecer um provedor de 64 bits antes de converter o projeto para 64 bits.

Captura de tela mostrando como alterar o provedor de dados ADO.NET.

Captura de tela mostrando como alterar o provedor de dados ADO.NET.

Testar a conexão

Depois de escolher a fonte de dados, clique em Testar Conexão. Se ela não for bem-sucedida, você precisará solucionar os problemas com base na documentação do fornecedor.

Captura de tela mostrando a caixa de mensagem Testar Conexão bem-sucedida.

Captura de tela mostrando a caixa de mensagem Testar Conexão bem-sucedida.

Se o teste for bem-sucedido, você estará pronto para criar uma fonte de dados, que é um termo do Visual Studio que realmente significa um modelo de dados baseado no banco de dados ou serviço subjacente.

Conectar-se usando o Pesquisador de Objetos do SQL Server

A experiência poderá ser mais fácil se você usar Pesquisador de Objetos do SQL Server, pois verá uma caixa de diálogo que fornece mais ajuda para localizar bancos de dados disponíveis localmente, na rede local e em suas assinaturas do Azure, fornecendo um histórico de opções usadas recentemente.

Para acessar a caixa de diálogo conectar a partir do Pesquisador de Objetos do SQL Server, clique no botão da barra de ferramentas Adicionar SQL Server.

Captura de tela do botão Adicionar SQL Server do Pesquisador de Objetos do SQL Server

A caixa de diálogo conectar é exibida. Escolha seu servidor local, de rede ou do SQL do Azure, selecione um banco de dados, forneça credenciais e escolha Conectar.

Captura de tela da caixa de diálogo Conectar do Pesquisador de Objetos do SQL Server.

Se você precisar definir outras configurações na cadeia de conexão, poderá usar o link Avançado, que mostra todas as configurações. Por exemplo, para se conectar a um banco de dados LocalDB baseado em um arquivo MDF, escolha Avançado e defina a propriedade AttachDbFilename.

Captura de tela mostrando as Configurações avançadas.

Depois que você terminar de configurar a conexão, o servidor e o banco de dados serão mostrados na janela Pesquisador de Objetos do SQL Server.

Captura de tela mostrando a mensagem Conectado com êxito.

A partir daí, você pode navegar no banco de dados, gravar e executar consultas, editar dados, procedimentos e funções armazenados e executar outras ações diretamente no Visual Studio.

Próximas etapas

Se você estiver usando o .NET Framework (não .NET Core, .NET 5 ou posterior) e o Windows Forms ou WPF, poderá usar a janela Fontes de Dados, por exemplo, para configurar a associação de dados para os controles nos aplicativos Windows Forms e WPF. Confira Adicionar novas fontes de dados. Essas ferramentas foram projetadas para permitir que você crie rapidamente aplicativos do Windows que precisam permitir que os usuários insiram, exibam e manipulem dados.

Se você estiver usando o .NET 5 ou posterior, o .NET Core ou o ASP.NET Core, poderá conectar seu aplicativo ao banco de dados usando os Serviços Conectados. Usando os serviços conectados, você pode usar facilmente um banco de dados de desenvolvimento local, hospedado pelo SQL LocalDB, o SQL Server em execução em um contêiner ou uma instância local do SQL Server e, em seguida, fazer a transição para o Banco de Dados SQL do Azure quando estiver pronto para implantar na nuvem. Com o .NET 5 ou posterior, o .NET Core e o ASP.NET Core, você deve considerar o uso do Entity Framework Core como sua estrutura de banco de dados.