Fonctionnalités de Microsoft ODBC Driver for SQL Server sur Windows

Télécharger le pilote ODBC

Microsoft ODBC Driver 18.0 for SQL Server sur Windows

Le pilote ODBC 18.0 permet aux utilisateurs d’envoyer des types de données longs en tant que types de données max à l’aide du mot clé LongAsMax pour activer ou désactiver le paramètre. Quand cette option est activée, les types SQL_LONGVARCHAR, SQL_LONGVARBINARY et SQL_LONGWVARCHAR sont envoyés respectivement en tant que varchar(max), varbinary(max) et nvarchar(max) au lieu de text, image et ntext.

Les valeurs par défaut du chiffrement de la connexion ont été modifiées. La valeur par défaut pour l’option Chiffrement est désormais Oui. Les nouveaux mots clés Facultatifs et Obligatoires ont été introduits en tant que synonymes respectifs de Oui et Non. Pour la connexion avec le protocole TDS 8.0, le mode Strict (Encrypt=Strict) a été ajouté. Dans ce mode, le certificat de serveur est toujours vérifié (TrustServerCertificate est ignoré). Un nouveau mot clé, HostnameInCertificate, peut être utilisé pour spécifier le nom d’hôte attendu trouvé dans le certificat s’il diffère du serveur spécifié. HostnameInCertificate est utilisable dans tous les modes de chiffrement et s’applique également si l’option côté serveur Force Encryption est activée, ce qui entraîne la vérification par le pilote du certificat en mode Facultatif ou Obligatoire, sauf s’il est désactivé à l’aide de TrustServerCertificate.

Le pilote ODBC 18 comprend des extensions SQLGetData. Quand cette option est activée, SQLGetData peut être utilisé pour récupérer des données de colonne dans n’importe quel ordre dans une ligne, notamment en revenant en arrière. La fonctionnalité est fournie à des fins de compatibilité. Elle diminue considérablement les performances et augmente l’utilisation de la mémoire. Il est fortement recommandé que l’application accède toujours aux colonnes dans l’ordre croissant. Pour activer les extensions SQLGetData, vous pouvez soit utiliser l’attribut GetDataExtensions de chaîne de connexion, soit utiliser la fonction SQLSetConnectAttr pour définir SQL_COPT_SS_GETDATA_EXTENSIONS sur SQL_EN_ON.

La prise en charge de Windows ARM64 est incluse à partir de la version 18.2 d’ODBC Driver et est actuellement une préversion. Le pilote ARM64 s’adresse uniquement aux applications ARM64 64 bits et n’inclut pas les pilotes d’émulation ARM 32 bits ni x86/amd64.

Microsoft ODBC Driver 17.4 for SQL Server sur Windows

ODBC Driver 17.4 permet d’ajuster les paramètres TCP Keep-Alive. Ces paramètres peuvent être modifiés en ajoutant des valeurs aux clés de Registre du pilote ou du DSN. Les clés se trouvent dans HKEY_LOCAL_MACHINE\Software\ODBC\ pour les sources de données système, et dans HKEY_CURRENT_USER\Software\ODBC\ pour les sources de données utilisateur. Pour DSN, les valeurs doivent être ajoutées à ...\Software\ODBC\ODBC.INI\<DSN Name>, et pour le pilote à ...\Software\ODBC\ODBCINST.INI\ODBC Driver 17 for SQL Server.

Pour plus d’informations, consultez Entrées de Registre pour les composants ODBC.

Les valeurs sont REG_SZ et sont les suivantes :

  • KeepAlive contrôle la fréquence à laquelle TCP tente de vérifier qu’une connexion inactive est toujours intacte en envoyant un paquet keep-alive. La valeur par défaut est 30 secondes.

  • KeepAliveInterval détermine l’intervalle qui sépare les retransmissions keep-alive jusqu’à ce qu’une réponse soit reçue. La valeur par défaut est 1 seconde.

Microsoft ODBC Driver 13.1 for SQL Server sur Windows

ODBC Driver 13.1 for SQL Server contient toutes les fonctionnalités de la version précédente (11). S’ajoute également la prise en charge d’Always Encrypted et l’authentification avec Microsoft Entra ID (anciennement Azure Active Directory).

Le Chiffrement intégral permet aux clients de chiffrer des données sensibles dans des applications clientes et de ne jamais révéler les clés de chiffrement à SQL Server. À cette fin, un pilote Always Encrypted installé sur l’ordinateur client chiffre et déchiffre automatiquement les données sensibles dans l’application cliente SQL Server. Le pilote chiffre les données dans les colonnes sensibles avant de les transmettre à SQL Server. Il réécrit aussi automatiquement les requêtes afin de préserver la sémantique de l’application. De même, il déchiffre de manière transparente les données stockées dans les colonnes de base de données chiffrées qui figurent dans les résultats de la requête. Pour plus d’informations, consultez Utilisation d’Always Encrypted avec ODBC Driver.

Microsoft Entra ID permet aux utilisateurs, aux administrateurs de base de données et aux programmeurs d’applications d’utiliser l’authentification Microsoft Entra. Pour plus d’informations, consultez Utilisation de Microsoft Entra ID avec le pilote ODBC, et Connexion à Azure SQL ou Azure Synapse Analytics à l’aide de l’authentification Microsoft Entra.

Microsoft® ODBC Driver 11 for SQL Server® dans Windows

ODBC Driver for SQL Server contient toutes les fonctionnalités du pilote ODBC SQL Server Native Client fournies avec SQL Server 2012 (11.x). Pour plus d’informations sur SQL Server Native Client, consultez Programmation SQL Server Native Client. Le pilote ODBC SQL Server Native Client est basé sur le pilote ODBC fourni avec le système d’exploitation Windows. Pour plus d’informations sur ce pilote, consultez SDK Windows Data Access Components.

Cette version de ODBC Driver for SQL Server contient les nouvelles fonctionnalités suivantes :

Option bcp.exe -l pour spécifier un délai d’expiration de la connexion

L’option -l spécifie le nombre de secondes au terme duquel une connexion de bcp.exe à SQL Server expire quand vous tentez de vous connecter à un serveur. Par défaut, le délai d'expiration de la connexion est de 15 secondes. Le délai de connexion doit être un nombre compris entre 0 et 65534. Si la valeur fournie n’est pas numérique ou n’est pas comprise dans cet intervalle, bcp.exe génère un message d’erreur. Une valeur 0 spécifie un délai d’expiration infini. Un délai d’expiration de la connexion inférieur à (environ) 10 secondes n’est pas fiable.

Mise en pool des connexions prenant en charge les pilotes

ODBC Driver for SQL Server prend en charge le regroupement de connexions prenant en charge les pilotes. Pour plus d’informations, consultez Regroupement de connexions prenant en charge le pilote dans le pilote ODBC pour SQL Server.

Exécution asynchrone (méthode de notification)

ODBC Driver for SQL Server prend en charge l’exécution asynchrone (méthode de notification). Pour obtenir un exemple d’utilisation, consultez Exemple d’exécution asynchrone (méthode de notification).

Résilience de connexion

Pour vous assurer que les applications restent connectées à Microsoft Azure SQL Database, le pilote ODBC sur Windows peut restaurer les connexions inactives. Pour plus d’informations, consultez Résilience de connexion du pilote ODBC Windows.

Changements de comportement

Dans SQL Server Native Client, l’option -y0 pour sqlcmd.exe a entraîné la troncation de la sortie à 1 Mo si la largeur d’affichage était égale à 0.

Depuis ODBC Driver 11 for SQL Server, il n’existe aucune limite sur la quantité de données pouvant être récupérées dans une même colonne quand vous spécifiez -y0. sqlcmd.exe diffuse désormais des colonnes allant jusqu’à une taille de 2 Go (valeur maximale du type de données SQL Server).

Autre différence, spécifier à la fois -h and -y0 génère maintenant une erreur indiquant que les options sont incompatibles. -h, qui spécifie le nombre de lignes à imprimer entre les en-têtes de colonnes et n’a jamais été compatible avec -y0, a été ignoré, même si aucun en-tête n’était imprimé.

-y0 peut provoquer des problèmes de performances sur le serveur et le réseau, en fonction de la taille des données retournées.

Voir aussi

Microsoft ODBC Driver for SQL Server sur Windows