Microsoft SQL-Treiber und -Frameworks

Gilt für:SQL ServerAzure SQL-DatenbankAzure SQL Managed InstanceAzure Synapse AnalyticsSQL-Datenbank in Microsoft Fabric

Anwendungen verwenden einen Treiber oder Datenanbieter, um sich mit Microsoft SQL-Produkten zu verbinden. Viele Anwendungen verwenden außerdem ein Framework, einen objektrelationalen Mapper (ORM) oder eine andere Datenzugriffsbibliothek über dem Treiber.

  • Ein Treiber oder Anbieter übernimmt Netzwerkkommunikation, Authentifizierung, Befehle, Transaktionen, Parameter und Ergebnisse.
  • Ein Framework oder eine Datenzugriffsbibliothek verwendet einen Treiber oder Anbieter und fügt Funktionen wie Objektzuordnung, Abfragegenerierung, Änderungsverfolgung, Migrationen oder Integration mit einem Anwendungsframework hinzu.

Wählen Sie zuerst den Fahrer oder Anbieter für Ihre Sprache und Ihre Plattform aus. Wenn Ihre Anwendung dann ein höherstufiges Programmiermodell benötigt, wählen Sie ein kompatibles Framework oder eine Bibliothek. Ein Framework ersetzt nicht den zugrundeliegenden Treiber.

Unterstützung für den Treiber und die Unterstützung für das Framework sind getrennt. Microsoft-Unterstützung für einen Treiber beinhaltet keine Unterstützung für ein Drittanbieter-Framework, das den Treiber verwendet.

Wählen Sie einen Fahrer oder Anbieter

Die folgende Tabelle listet die wichtigsten Treiber und Anbieter auf, die in dieser Dokumentation behandelt werden. Überprüfen Sie die verlinkte Produktdokumentation auf unterstützte Betriebssysteme, Laufzeitversionen, SQL-Produkte, Authentifizierungsmethoden und Funktionen.

Sprache oder Plattform Fahrer oder Anbieter Eigentum und Unterstützung
.NET Microsoft.Data.SqlClient Microsoft-Anbieter für neue .NET-Entwicklung.
C und C++ Microsoft ODBC-Treiber für SQL Server Microsoft ODBC-Treiber.
C und C++ Microsoft OLE DB-Treiber für SQL Server Microsoft OLE DB-Anbieter.
Go go-mssqldb Offizieller Microsoft Go-Treiber, der die Standard-Oberflächen database/sql implementiert.
Java Microsoft JDBC-Treiber für SQL Server Microsoft JDBC-Treiber.
Node.js Mühsam Community-unterstützter Fahrer. Microsoft trägt zum Projekt bei, aber es wird nicht von Microsoft unterstützt.
PHP Microsoft-Treiber für PHP für SQL Server Microsoft SQLSRV und PDO_SQLSRV Erweiterungen. Die Erweiterungen verwenden den Microsoft ODBC-Treiber für SQL Server.
Python mssql-python Microsoft-Python-Treiber
Rubin TinyTDS Community-unterstützter Fahrer. Ruby und TinyTDS haben keine Microsoft-Unterstützung.

Für Apache Spark verwenden Sie die integrierte Spark JDBC-Datenquelle mit Microsoft JDBC Driver für SQL Server. Der Microsoft SQL Spark Connector ist archiviert und befindet sich nicht in aktiver Entwicklung.

Wählen Sie ein Framework oder eine Datenzugriffsbibliothek

Die folgende Tabelle listet Frameworks und Datenzugriffsbibliotheken auf, die Microsoft SQL-Produkte über einen Provider, Adapter oder Datenbankdialekt unterstützen. Die Liste ist nicht vollständig.

Sprache Framework oder Bibliothek Microsoft SQL-Integration Eigentum und Unterstützung
.NET Entity Framework Core SQL Server Anbieter Microsoft.Data.SqlClient Von Microsoft unterhaltener Anbieter in Entity Framework Core.
.NET Entity Framework 6 SQL Server-Anbieter Microsoft.Data.SqlClient Microsoft-Anbieter für bestehende Entity Framework 6-Anwendungen.
.NET Dapper erweitert ADO.NET DbConnection; Verwendung mit Microsoft.Data.SqlClient. Drittanbieter-Mikro-ORM.
Go GORM go-mssqldb Drittanbieter-ORM. Der verlinkte Artikel zeigt, wie man seinen Microsoft SQL-Dialekt verwendet.
Go sqlx go-mssqldb Eine Drittanbieter-Bibliothek, die database/sql um Mapping- und Abfragehilfen erweitert.
Java Hibernate ORM Microsoft SQL-Dialekt über JDBC; Verwendung mit Microsoft JDBC Driver für SQL Server. Drittanbieter-ORM.
Node.js und TypeScript Prisma ORM Integrierter sqlserver Provider; Prisma 7 kann den node-mssql-Treiberadapter dieses Providers nutzen. Drittanbieter-ORM.
Node.js und TypeScript Sequelize Microsoft SQL-Dialekt basierend auf Tedious. Drittanbieter-ORM.
Node.js und TypeScript TypeORM Microsoft SQL-Datenquelle basierend auf node-mssql und Tedious. Drittanbieter-ORM.
PHP Laravel Eloquent Verbindung mit Microsoft SQL über SQLSRV und PDO_SQLSRV. Drittanbieter-Web-Framework und ORM.
PHP Doktrin DBAL und ORM Microsoft-SQL-Verbindung über den sqlsrv- oder pdo_sqlsrv-Treiber. Datenbankabstraktionsschicht von Drittanbietern und ORM.
Python mssql-django mssql-python Oder pyodbc in MSSQL-Django 2.0. Microsoft Django Datenbank-Backend.
Python SQLAlchemy Das hängt vom gewählten Microsoft-SQL-Dialekt ab. Drittanbieter-Toolkit und ORM. Überprüfen Sie die Linked-Integrationsanleitung und deren Versionsanforderungen.
Rubin Active Record SQL Server Adapter Microsoft SQL-Adapter für Ruby on Rails basierend auf TinyTDS. Von der Community unterstützter Adapter.

Wenn Sie ein Framework oder eine Bibliothek bewerten:

  • Bestätigen Sie, dass der Anbieter, Adapter oder Dialekt das Microsoft SQL-Produkt, die Authentifizierungsmethode und die Funktionen Ihrer Anwendung unterstützt.
  • Überprüfen Sie den Wartungsstatus, die Veröffentlichungsrichtlinie und den Supportkanal des Frameworks.
  • Bei Verbindungsproblemen reproduzieren Sie das Problem mit dem zugrundeliegenden Treiber, wenn möglich. Eine Reproduktion direkt auf Treiberebene hilft festzustellen, ob das Problem dem Treiber oder dem übergeordneten Framework zuzuordnen ist.