Partilhar via


Provedor de banco de dados Microsoft SQL Server EF Core

Esse provedor de banco de dados permite que o Entity Framework Core seja usado com o Microsoft SQL Server (incluindo o Azure SQL e o Azure Synapse Analytics). O provedor é mantido como parte do Entity Framework Core Project.

Instalar

Instale o pacote NuGet Microsoft.EntityFrameworkCore.SqlServer.

dotnet add package Microsoft.EntityFrameworkCore.SqlServer

Observação

O provedor faz referência a Microsoft.Data.SqlClient (não System.Data.SqlClient). Se seu projeto tem uma dependência direta de SqlClient, certifique-se de que ele faz referência ao pacote Microsoft.Data.SqlClient.

Dica

O pacote Microsoft.Data.SqlClient é fornecido com mais frequência do que o provedor EF Core. Se você quiser aproveitar os novos recursos e correções de bugs, você pode adicionar uma referência direta de pacote para a versão mais recente do Microsoft.Data.SqlClient.

Advertência

A implementação assíncrona do Microsoft.Data.SqlClient infelizmente tem alguns problemas conhecidos (por exemplo, #593, #601 e outros). Se você estiver vendo problemas de desempenho inesperados, tente usar a execução de comando de sincronização, especialmente ao lidar com texto grande ou valores binários.

Utilização

A partir do EF 9, é recomendável usar UseAzureSql e UseAzureSynapse para especificar que você está se conectando ao SQL do Azure ou ao Azure Synapse Analytics especificamente e UseSqlServer especificar que está se conectando ao SQL Server local; Isso permite que o provedor otimize e suporte adequadamente essas plataformas. Também é recomendado usar UseCompatibilityLevel método para especificar o nível de compatibilidade para que o SQL gerado seja compatível e/ou use os recursos mais recentes possíveis.

Observação

Os métodos UseAzureSql e UseAzureSynapse foram introduzidos no EF Core 9.0.

Mecanismos de banco de dados suportados

  • Microsoft SQL Server (a partir de 2012)
  • Azure SQL
  • Azure Synapse Analytics