Compartilhar via


Trabalhar com dados no Visual Studio

No Visual Studio, você pode criar aplicativos que se conectam a dados em praticamente qualquer produto ou serviço de banco de dados, em qualquer formato, em qualquer lugar, em um computador local, em uma rede local ou em uma nuvem pública, privada ou híbrida.

Para aplicativos em JavaScript, Python, PHP, Ruby ou C++, você se conecta a dados como se fizesse qualquer outra coisa, obtendo bibliotecas e escrevendo código. Para aplicativos .NET, o Visual Studio fornece ferramentas que você pode usar para explorar fontes de dados, criar modelos de objeto para armazenar e manipular dados na memória e associar dados à interface do usuário. O Microsoft Azure fornece SDKs para .NET, Java, Node.js, PHP, Python, Ruby e aplicativos móveis e ferramentas no Visual Studio para se conectar ao Armazenamento do Azure.

As listas a seguir mostram apenas alguns dos muitos sistemas de armazenamento e banco de dados que podem ser usados no Visual Studio. As ofertas Microsoft Azure são serviços de dados que incluem todo o provisionamento e administração do armazenamento de dados subjacente. A carga de trabalho de desenvolvimento do Azure no Visual Studio permite que você trabalhe com armazenamentos de dados do Azure diretamente do Visual Studio.

carga de trabalho de desenvolvimento do Azure

A maioria dos outros produtos de banco de dados SQL e NoSQL listados aqui pode ser hospedada em um computador local, em uma rede local ou no Microsoft Azure em uma máquina virtual. Se você hospedar o banco de dados em uma máquina virtual do Microsoft Azure, será responsável pelo gerenciamento do próprio banco de dados.

Microsoft Azure

  • Banco de Dados SQL
  • Azure Cosmos DB
  • Armazenamento (blobs, tabelas, filas, arquivos)
  • SQL Data Warehouse
  • Banco de Dados Stretch do SQL Server
  • StorSimple
  • E mais...

SQL

  • SQL Server 2005-2016 (inclui Express e LocalDB)
  • Firebird
  • MariaDB
  • MySQL
  • Oráculo
  • PostgreSQL
  • SQLite
  • E mais...

NoSQL

  • Apache Cassandra
  • CouchDB
  • MongoDB
  • NDatabase
  • OrientDB|
  • RavenDB
  • VelocityDB
  • E mais...

Muitos fornecedores de banco de dados e terceiros dão suporte à integração do Visual Studio por pacotes NuGet. Você pode explorar as ofertas no nuget.org ou por meio do Gerenciador de Pacotes Do NuGet no Visual Studio (Tools>o Gerenciador de Pacotes NuGet>Gerenciar Pacotes NuGet para solução). Outros produtos de banco de dados se integram ao Visual Studio como uma extensão. Você pode procurar essas ofertas no do Visual Studio Marketplace ou navegando até Extensões>Gerenciar Extensões e selecionando Online no painel esquerdo da caixa de diálogo. Para obter mais informações, consulte sistemas de banco de dados compatíveis com o Visual Studio.

Usando do Visual Studio Connected Services, você pode simplificar o processo de adição de suporte de banco de dados aos seus projetos.

Para cenários do SQL Server, há suporte por meio dos Serviços Conectados:

  • SQL Server local. Nesse cenário, você instala o SQL Server em algum lugar da rede local e se conecta a ele.
  • SQL Server em seu computador local. Nesse cenário, você instala o SQL Server em seu computador local e se conecta a ele.
  • SQL Server Express LocalDB. Você não instala nada além do Visual Studio; você simplesmente se conecta a ele.
  • SQL Server Express LocalDB no Contêiner. LocalDB como na opção anterior, mas dentro de um contêiner local.
  • Banco de Dados SQL do Azure. Conecte-se ao serviço em execução ao vivo no Azure.

Para outras tecnologias relacionadas a dados, o Visual Studio 2022 dá suporte ao seguinte:

  • Armazenamento do Azure (local e remoto)
  • Azure Cosmos DB (local e remoto)
  • SQLite (opção somente local)
  • PostgreSQL no contêiner (opção somente local)
  • MongoDB no contêiner (opção somente local)

Além dos Serviços Conectados, as listas a seguir mostram apenas alguns dos vários sistemas de banco de dados e armazenamento que podem ser usados do Visual Studio. As ofertas Microsoft Azure são serviços de dados que incluem todo o provisionamento e administração do armazenamento de dados subjacente. A carga de trabalho de desenvolvimento do Azure no Visual Studio permite que você trabalhe com armazenamentos de dados do Azure diretamente do Visual Studio.

carga de trabalho de desenvolvimento do Azure

A maioria dos outros produtos de banco de dados SQL e NoSQL listados aqui pode ser hospedada em um computador local, em uma rede local ou no Microsoft Azure em uma máquina virtual. Se você hospedar o banco de dados em uma máquina virtual do Microsoft Azure, será responsável pelo gerenciamento do próprio banco de dados.

Microsoft Azure

  • SQL Data Warehouse
  • Banco de Dados Stretch do SQL Server
  • StorSimple
  • E mais...

SQL

  • Firebird
  • MariaDB
  • MySQL
  • Oráculo
  • E mais...

NoSQL

  • Apache Cassandra
  • CouchDB
  • MongoDB
  • NDatabase
  • OrientDB|
  • RavenDB
  • VelocityDB
  • E mais...

Nota

O suporte estendido para o SQL Server 2005 terminou em 12 de abril de 2016. Não há garantia de que as ferramentas de dados no Visual Studio 2015 e posterior continuarão a funcionar com o SQL Server 2005.

Idiomas do .NET

A tecnologia de acesso a dados descrita na documentação do Visual Studio usa ADO.NET. ADO.NET é uma estrutura de acesso a dados herdada e não é recomendada para aplicativos de dados modernos. Recomendamos direcionar o .NET Core ou o .NET 5 e versões posteriores e usar Entity Framework Core para desenvolvimento de acesso a dados.

ADO.NET é um conjunto de classes que define uma interface para acessar qualquer tipo de fonte de dados, relacional e não relacional. O Visual Studio tem várias ferramentas e designers que trabalham com ADO.NET para ajudá-lo a se conectar a bancos de dados, manipular os dados e apresentar os dados ao usuário. A documentação nesta seção descreve como usar essas ferramentas. Você também pode programar diretamente com os objetos de comando ADO.NET. Para obter mais informações sobre como chamar as APIs de ADO.NET diretamente, consulte ADO.NET.

Para obter a documentação de acesso a dados relacionada ao ASP.NET, consulte Trabalhando com Dados no site ASP.NET. Para obter um tutorial sobre como usar o Entity Framework com ASP.NET Model-View-Controller (MVC), consulte Introdução ao Entity Framework 6 Code First usando o MVC 5.

Aplicativos da Plataforma Universal do Windows (UWP) em C# ou Visual Basic podem usar o SDK do Microsoft Azure para .NET para acessar o Armazenamento do Azure e outros serviços do Azure. A classe Windows.Web.HttpClient habilita a comunicação com qualquer serviço RESTful. Para obter mais informações, consulte Como se conectar a um servidor HTTP usando oWindows.Web.Http.

Para o armazenamento de dados no computador local, a abordagem recomendada é usar o SQLite, que é executado no mesmo processo que o aplicativo. Se uma camada ORM (mapeamento relacional de objeto) for necessária, você poderá usar o Entity Framework. Para mais informações, confira Acesso a dados.

Se você estiver se conectando aos serviços do Azure, baixe as ferramentas mais recentes do SDK do Azure .

Provedores de dados

Para que um banco de dados seja consumível em ADO.NET, ele deve ter um provedor de dados ADO.NET personalizado ou então deve expor uma interface ODBC ou OLE DB. A Microsoft fornece uma lista de provedores de dados ADO.NET para produtos do SQL Server, bem como provedores ODBC e OLE DB.

Nota

Se você estiver usando o Visual Studio para se conectar a bancos de dados usando provedores de dados OLEDB ou ODBC, precisará estar ciente de que as versões do Visual Studio antes do Visual Studio 2022 são todos processos de 32 bits. Isso significa que algumas das ferramentas de dados no Visual Studio só 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ê estiver usando o Visual Studio 2022 para se conectar a bancos de dados, precisará estar ciente de que o Visual Studio 2022 é um processo de 64 bits. Isso significa que algumas das ferramentas de dados no Visual Studio não poderão se conectar a bancos de dados OLEDB ou ODBC usando provedores de dados de 32 bits.

Se você precisar manter aplicativos de 32 bits que se conectam a bancos de dados OLEDB ou 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, será necessário 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 ser um processo de 64 bits, é recomendável usar o Mecanismo de Banco de Dados do Microsoft Access de 64 bits, também chamado ACE (Mecanismo de Conectividade de Acesso). Confira Provedor OLE DB para Jet e Driver ODBC são versões exclusivas de 32 bits para obter mais informações.

Modelagem de dados

No .NET, você tem três opções para modelar e manipular dados na memória depois de recuperá-los de uma fonte de dados:

  • Entity Framework: a tecnologia orm da Microsoft preferida. Você pode usá-lo para programar em relação a dados relacionais como objetos .NET de primeira classe. Para novos aplicativos, deve ser a primeira opção padrão quando um modelo é necessário. Ele requer suporte personalizado do provedor de ADO.NET subjacente.

  • LINQ to SQL: um mapeador relacional de objeto de geração anterior. Ele funciona bem para cenários menos complexos, mas não está mais em desenvolvimento ativo.

  • conjuntos de dados: o mais antigo das três tecnologias de modelagem. Ele foi projetado principalmente para o desenvolvimento rápido de aplicativos "formulários sobre dados", nos quais você não está processando grandes quantidades de dados ou executando consultas ou transformações complexas. Um objeto DataSet consiste em objetos DataTable e DataRow que logicamente se assemelham a objetos do Banco de Dados SQL muito mais do que objetos .NET. Para aplicativos relativamente simples com base em fontes de dados SQL, os conjuntos de dados ainda podem ser uma boa opção.

Não há nenhum requisito para usar nenhuma dessas tecnologias. Em alguns cenários, especialmente quando o desempenho é crítico, você pode simplesmente usar um objeto DataReader para ler do banco de dados e copiar os valores necessários em um objeto de coleção, como List<T>.

C++ nativo

Os aplicativos C++ que se conectam ao SQL Server devem usar o Microsoft® ODBC Driver 13.1 para SQL Server na maioria dos casos. Se os servidores estiverem vinculados, o OLE DB será necessário e, para isso, você usará o do SQL Server Native Client. Você pode acessar outros bancos de dados usando os drivers ODBC ou OLE DB diretamente. O ODBC é a interface de banco de dados padrão atual, mas a maioria dos sistemas de banco de dados fornece funcionalidade personalizada que não pode ser acessada por meio da interface ODBC. O OLE DB é uma tecnologia herdada de acesso a dados COM que ainda tem suporte, mas não é recomendada para novos aplicativos. Para obter mais informações, consulte Data Access no Visual C++.

Os programas C++ que consomem serviços REST podem usar o SDK REST do C++.

Modelagem de dados — o Visual Studio não fornece uma camada ORM para C++. ODB é um ORM de software livre popular para C++.

Para saber mais sobre como se conectar a bancos de dados de aplicativos em C++, consulte ferramentas de dados do Visual Studio para C++.

JavaScript

JavaScript no Visual Studio é uma linguagem de primeira classe para a criação de aplicativos multiplataforma, aplicativos UWP, serviços de nuvem, sites e aplicativos Web. Você pode usar Bower, Grunt, Gulp, npm e NuGet de dentro do Visual Studio para instalar suas bibliotecas JavaScript e produtos de banco de dados favoritos. Conecte-se ao Armazenamento do Microsoft Azure e aos serviços baixando SDKs do site do Azure. Edge.js é uma biblioteca que conecta o JavaScript do lado do servidor (Node.js) a fontes de dados ADO.NET.

Python

Instale o suporte do Python no Visual Studio para criar aplicativos Python. A documentação do Azure tem vários tutoriais sobre como se conectar aos dados, incluindo o seguinte:

o Microsoft Azure Storage— descreve o Armazenamento do Azure e como criar aplicativos usando blobs, tabelas, filas e arquivos do Azure.

Banco de Dados SQL do Azure— Descreve como conectar-se ao Banco de Dados SQL do Azure, um banco de dados relacional como serviço.

SQL Server Data Tools— descreve as ferramentas que simplificam o design, a exploração, o teste e a implantação de aplicativos e bancos de dados conectados.

ADO.NET— Descreve a arquitetura ADO.NET e como usar as classes ADO.NET para gerenciar dados do aplicativo e interagir com fontes de dados e XML.

ADO.NET Entity Framework— descreve como criar aplicativos de dados que permitem que os desenvolvedores programem em relação a um modelo conceitual, em vez de diretamente em um banco de dados relacional.

WCF Data Services 4.5— descreve como usar os Serviços de Dados do WCF para implantar serviços de dados na Web ou em uma intranet que implemente o OData (Open Data Protocol).

Dados em Soluções do Office – contém links para tópicos que explicam como os dados funcionam nas soluções do Office. Isso inclui informações sobre programação orientada a esquema, cache de dados e acesso a dados do lado do servidor.

LINQ (Consulta Integrada à Linguagem)— descreve os recursos de consulta integrados ao C# e ao Visual Basic e o modelo comum para consultar bancos de dados relacionais, documentos XML, conjuntos de dados e coleções na memória.

Ferramentas XML no Visual Studio – discute o trabalho com dados XML, a depuração de XSLT, os recursos do XML do .NET e a arquitetura da consulta XML.

documentos e dados XML— apresenta uma visão geral de um conjunto abrangente e integrado de classes que trabalham com documentos e dados XML na plataforma .NET.