Controladores e frameworks SQL da Microsoft

Aplica-se a:SQL ServerBanco de Dados SQL do AzureInstância Gerenciada SQL do AzureBanco de Dados SQL do Azure Synapse Analyticsno Microsoft Fabric

As aplicações utilizam um driver ou fornecedor de dados para se ligar a produtos Microsoft SQL. Muitas aplicações também utilizam um framework, mapeador objeto-relacional (ORM) ou outra biblioteca de acesso a dados por cima do driver.

  • Um driver ou fornecedor gere a comunicação de rede, autenticação, comandos, transações, parâmetros e resultados.
  • Uma framework ou biblioteca de acesso a dados utiliza um driver ou fornecedor e adiciona funcionalidades como mapeamento de objetos, geração de consultas, rastreamento de alterações, migrações ou integração com uma framework de aplicação.

Escolha primeiro o motorista ou fornecedor para a sua língua e plataforma. Depois, se a sua aplicação precisar de um modelo de programação de nível superior, escolha uma framework ou biblioteca compatível. Um framework não substitui o driver subjacente.

O suporte ao driver e o suporte ao framework são separados. O suporte da Microsoft para um driver não inclui suporte para um framework de terceiros que utilize o driver.

Escolha um motorista ou fornecedor

A tabela seguinte lista os principais condutores e prestadores abrangidos nesta documentação. Consulte a documentação do produto indicada na ligação para ver os sistemas operativos suportados, as versões de runtime, os produtos SQL, os métodos de autenticação e as funcionalidades.

Língua ou plataforma Condutor ou fornecedor Apropriação e apoio
.NET Microsoft.Data.SqlClient Fornecedor da Microsoft para o novo desenvolvimento em .NET.
C e C++ Microsoft ODBC Driver para SQL Server Driver ODBC da Microsoft.
C e C++ Controlador Microsoft OLE DB para SQL Server Fornecedor OLE DB da Microsoft.
Go go-mssqldb Driver oficial do Microsoft Go que implementa as interfaces padrãodatabase/sql.
Java Controlador Microsoft JDBC para SQL Server Driver JDBC da Microsoft.
Node.js Tedioso Condutor apoiado pela comunidade. A Microsoft contribui para o projeto, mas não inclui suporte da Microsoft.
PHP Controladores de PHP da Microsoft para SQL Server Microsoft SQLSRV e extensões PDO_SQLSRV. As extensões utilizam o Microsoft ODBC Driver for SQL Server.
Python mssql-python Controlador Python da Microsoft
Ruby TinyTDS Condutor apoiado pela comunidade. O Ruby e o TinyTDS não vêm com suporte da Microsoft.

Para o Apache Spark, utilize a fonte de dados JDBC incorporada do Spark com o Microsoft JDBC Driver for SQL Server. O conector Microsoft SQL Spark está arquivado e não está em desenvolvimento ativo.

Escolha um framework ou biblioteca de acesso a dados

A tabela seguinte lista frameworks e bibliotecas de acesso a dados que suportam produtos Microsoft SQL através de um fornecedor, adaptador ou dialeto de base de dados. A lista não é exaustiva.

Linguagem Estrutura ou biblioteca Integração Microsoft SQL Apropriação e apoio
.NET Fornecedor do SQL Server para o Entity Framework Core Microsoft.Data.SqlClient Fornecedor mantido pela Microsoft no Entity Framework Core.
.NET Fornecedor de dados do SQL Server para o Entity Framework 6 Microsoft.Data.SqlClient Fornecedor Microsoft para aplicações existentes do Entity Framework 6.
.NET Dapper Estende ADO.NETDbConnection; usar com Microsoft.Data.SqlClient. Micro-ORM de terceiros.
Go GORM go-mssqldb ORM de terceiros. O artigo ligado mostra como usar o seu dialeto Microsoft SQL.
Go sqlx go-mssqldb Biblioteca de terceiros que expande database/sql com utilitários de mapeamento e consulta.
Java Hibernate ORM Dialeto Microsoft SQL através de JDBC; utilizar com o Microsoft JDBC Driver for SQL Server. ORM de terceiros.
Node.js e TypeScript Prisma ORM Provedor integrado sqlserver; o Prisma 7 pode usar o respetivo adaptador de controlador node-mssql. ORM de terceiros.
Node.js e TypeScript Sequelize Dialeto SQL da Microsoft baseado em Tedious. ORM de terceiros.
Node.js e TypeScript TypeORM Fonte de dados Microsoft SQL baseada em node-mssql e Tedious. ORM de terceiros.
PHP Laravel Eloquent Ligação ao Microsoft SQL através de SQLSRV e PDO_SQLSRV. Framework web de terceiros e ORM.
PHP Doutrina DBAL e ORM Ligação ao Microsoft SQL através do controlador pdo_sqlsrv ou sqlsrv. Camada de abstração de base de dados de terceiros e ORM.
Python MSSQL-Django mssql-python Ou pyodbc em mssql-django 2.0. Backend da base de dados Microsoft Django.
Python SQLAlchemy Depende do dialeto Microsoft SQL selecionado. Conjunto de ferramentas de terceiros e ORM. Consulte as orientações de integração vinculadas e os seus requisitos de versão.
Ruby Adaptador do SQL Server para Active Record Adaptador Microsoft SQL para Ruby on Rails baseado no TinyTDS. Adaptador suportado pela comunidade.

Quando avalia uma estrutura ou biblioteca:

  • Confirme se o seu fornecedor, adaptador ou dialeto suporta o produto Microsoft SQL, o método de autenticação e as funcionalidades de que a sua aplicação precisa.
  • Verifique o estado de manutenção do framework, a política de lançamento e o canal de suporte.
  • Para problemas de conectividade, reproduza o problema com o controlador subjacente sempre que possível. Uma reprodução diretamente no controlador ajuda a determinar se o problema tem origem no controlador ou no framework de nível superior.