web-dev-qa-db-fra.com

Différences entre les conducteurs pour ODBC Les chauffeurs

J'étais en train de configurer le DSN système (64 bits) pour ma base de données dans SQL Server 2016 avec Windows 10 64 bits pro. Bien que l’on m’ait demandé de choisir le pilote pour configurer une source de données, les sélections suivantes sont disponibles:

  • Pilote ODBC 13 pour SQL Server
  • Serveur SQL
  • SQL Server Native Client 11.0
  • SQL Server Native Client RDA 11.0

Il semblait que je puisse configurer la source de données avec tous ces pilotes. Alors lequel devrais-je choisir en termes de rapidité et d'efficacité? Quelle est la différence entre eux?

Merci,

Jason

16
Jason

Pilote ODBC pour SQL Server

ODBC est la principale API d’accès aux données natif pour les applications écrites en C, C++, PHP, Python et autres pour la connexion à SQL Server.

Il est largement utilisé dans les scénarios d'intégration de données.

En outre, il est préférable de développer une application sous Windows et de la déployer sous Linux. 

Serveur SQL

Le nom complet du pilote SQL Server est SQL Server ODBC. C’est un ancien pilote depuis SQL 2000. Vous pouvez l’utiliser pour vous connecter à SQL Server 2016, mais vous ne pourrez pas accéder aux nouvelles fonctionnalités de SQL Server 2016.

Client natif SQL Server  

SQL Server Native Client contient à la fois le fournisseur de base de données SQL OLE et le pilote SQL ODBC pour prendre en charge la connectivité native vers SQL Server et prendre en charge toutes les fonctionnalités de SQL Server 2016. C'est le meilleur environnement Windows.

RDA de SQL Server Native Client  

L'accès aux données à distance (RDA) dans Microsoft SQL Server Compact 3.5 permet à une application d'accéder aux données d'une table de base de données SQL Server distante. 

Il peut également stocker, lire et mettre à jour ces données dans SQL Server Compact 3.5, puis mettre à jour la table SQL Server d'origine.

La RDA sera supprimée dans la prochaine version, évitez de l'utiliser. 

Alors choisissez pilote SQL en fonction des critères ci-dessus.

27
M.Hassan

Microsoft ODBC Pilote pour SQL Server (MSODBCSQL)

Ce pilote était annoncé en 2013 _ en tant que successeur de SQL Server Native Client. Il est installé avec les versions récentes de SQL Server (13 avec 2016 et 2017). Il y a aussi installateurs autonomes . Historique du pilote pour Microsoft SQL Server recommande ce pilote plutôt que "SQL Server" et "SQL Server Native Client" pour ODBC. Fonctionnalités ajoutées sur "SQL Server Native Client": regroupement de connexions prenant en compte les pilotes, résilience des connexions et exécution asynchrone (interrogation). Vous pouvez suivre les développements en cours sur le blog Microsoft ODBC Pilote de l’équipe Pilote pour SQL Server .

Driver={ODBC Driver XX for SQL Server} (XX pour la version installée. Voir Configuration système, Installation et fichiers de pilote .)

Client natif SQL Server (SQLNCLI)

Introduit avec SQL Server 2005 et livré avec SQL Server (également installable via sqlncli.msi à partir des packs de fonctionnalités SQL Server ). Fonctionnalités ajoutées sur "SQL Server": plusieurs ensembles de résultats actifs (MARS), types de données définis par l'utilisateur (UDT), notifications de requête, isolation de capture instantanée et prise en charge de types de données XML.

Driver={SQL Server Native Client} (SQL Server 2005)
Driver={SQL Server Native Client 10.0} (SQL Server 2008)
Driver={SQL Server Native Client 11.0} (SQL Server 2012 et versions ultérieures)

RDA SQL Server Native Client

L'accès distant aux données (RDA) est une fonctionnalité de SQL Server Compact qui "permet à une application d'accéder aux données à partir d'une table de base de données SQL Server distante". Je ne trouve pas beaucoup de documentation, mais il semble que ce pilote était destiné à prendre en charge des scénarios de réplication avec Compact Edition.

SQL Server (SQLSRV32)

Inclus dans Microsoft Data Access Components (MDAC) } (maintenant appelé Windows Data Access Components (WDAC)). Ce pilote est disponible par défaut sous Windows (depuis 98 et NT 4.0).

Driver={SQL Server}

2
Kevinoid

Client natif SQL Server vs fournisseur de données .NET Framework pour ODBC

Il semble que, pour la dernière version pour le client natif SQL Server, le client natif Microsoft® SQL Server® 2012 soit également nommé client natif SQL Server 11.0 . Ne prend pas en charge les nouvelles fonctionnalités de SQL Server 2014 ou ultérieur

Notez que SNAC 11 ne prend pas en charge les fonctionnalités fournies avec SQL Server 2014 et SQL Server 2016 qui n'étaient pas disponibles dans SQL Server 2012, tel que Résolution IP réseau transparente, Toujours chiffré, Paramètres d'authentification Azure AD, de copie en bloc et de valeur de table.

https://blogs.msdn.Microsoft.com/sqlreleaseservices/snac-lifecycle-explained/

Vous devez utiliser le pilote Microsoft® ODBC 11 ou 13 pour SQL Server pour bénéficier des nouvelles fonctionnalités de SQL Server 2014 ou ultérieur.

2
user3200692