Quoi de neuf dans go-mssqldb

Cet article répertorie les changements significatifs dans chaque version du pilote go-mssqldb. Le microsoft/go-mssqldb dépôt est une bifurcation de denisenkom/go-mssqldb. Cet article liste uniquement les versions publiées sous la fork Microsoft, à partir de la version 0.16.0. Pour un journal des modifications complet, voir la page des versions GitHub.

Note

Certains numéros de version ne sont pas séquentiels. Par exemple, les versions v1.2.0 à v1.4.0 n’ont jamais été publiées. Les sauts de version reflètent l’historique réel des versions du fork Microsoft.

v1.11.0 (août 2026)

  • Ajout de synonymes pour les chaînes de connexion ADO.NET. Les chaînes de connexions au format ADO acceptent désormais des orthographes de mots-clés alternatifs tels que Data Source, Initial Catalog, Connect Timeout, et UID. Pour plus d’informations, voir chaînes de connexion go-mssqldb.
  • Correction des erreurs fatales provoquées par des réponses de serveur malformées lors de l’analyse d’un défi NTLM, d’un décalage ou d’une longueur de l’option PRELOGIN, ainsi que d’une réponse de connexion d’administrateur dédiée (DAC) via SQL Server Browser.
  • Limitation de l’allocation initiale de mémoire tampon pour les valeurs à préfixe partiel (PLP).
  • Nom du tableau et ORDER des colonnes entre guillemets lors des opérations de copie en masse.
  • J’ai fermé la connexion TCP sur tous connect() les chemins d’erreur.
  • Renvoie float64 pour des colonnes réelles.
  • Prise en charge de REVERT en tant que commande intégrée lors de la détection des appels de procédures stockées.
  • Codage clarifié des URL NTLM pour les noms des sources de données URL.
  • Suppression du port des URL d’Azure Key Vault utilisées pour le point de terminaison et AllowedLocations.
  • Remplacé l’élément obsolète reflect.SliceHeader par unsafe.Slice.
  • Amélioration des performances de décodage des jeux de caractères avec un chemin rapide pour les données ASCII uniquement.

v1.10.0 (avril 2026)

  • Ajout d’un paramètre FailoverPartnerSPN de chaîne de connexion pour le basculement de secours de la mise en miroir de bases de données.
  • Ajout de la fonction NewConnectorWithProcessQueryText pour assurer la compatibilité avec le nom de pilote mssql.
  • Ajout de types annulables civil (NullDate, NullTime, NullDateTime) pour les paramètres de date et d’heure.
  • Implémentation de l’interface driver.DriverContext pour assurer la compatibilité avec database/sql.
  • Détecte les transactions annulées par le serveur afin d’empêcher une validation automatique silencieuse lorsque XACT_ABORT est activé.
  • Erreurs du serveur remontées depuis Rows.Close() lors du vidage du jeton.
  • Prise en charge des jetons TDS COLINFO et TABNAME renvoyés par des tables comportant des déclencheurs.
  • A retourné le type d’analyse interface{} pour les colonnes sql_variant au lieu de nil.
  • Fait en sorte que readCancelConfirmation respecte l’annulation du contexte.
  • Exposition de TrustServerCertificate dans msdsn.Config et lors de l’aller-retour de l’URL.
  • Masquage des informations d’identification dans les erreurs d’analyse de chaîne de connexion.
  • Ajout de la prise en charge du protocole de canal nommé sous Windows ARM64.

v1.9.8 (mars 2026)

  • Dépendances mises à jour pour résoudre les constats govulncheck.

v1.9.7 (février 2026)

  • Ajout de la protection étendue pour l’authentification (EPA).
  • Amélioration des performances grâce à l’utilisation de récepteurs pointeurs pour columnStruct, réduisant les copies mémoire.
  • Correction de l’échappement des colonnes lors de la copie en masse.
  • Correction de la gestion de stateSep dans le package de traitement par lots.

v1.9.6 (janvier 2026)

  • Paramètre de connexion ajouté serverCertificate pour la validation des certificats TLS par comparaison d’octets.
  • Mises à jour de la dépendance golang.org/x/crypto.

v1.9.4 (novembre 2025)

  • Correction de la gestion des paquets d’attention lors de l’annulation d’une transaction.
  • Restriction des protocoles de canal nommé et de mémoire partagée aux plateformes prises en charge.

v1.9.3 (septembre 2025)

  • Réinitialisation de la copie FMTONLY en bloc en cas de défaillance.
  • Correction du vidage des paquets de négociation TLS lors de l’établissement de la connexion.
  • Ajout de la prise en charge des valeurs entre guillemets doubles dans les chaînes de connexion de type ADO.

v1.8.2 (mai 2025)

  • Reconnaissance de Pwd comme alias du champ de mot de passe dans les chaînes de connexion.
  • Ajout de COMMIT et ROLLBACK comme commandes intégrées reconnues.

v1.8.0 (décembre 2024)

  • Ajout du support du type défini par l’utilisateur (UDT) pour hierarchyid, geometry, et geography.
  • Ajout des données de traçage aux paquets de préconnexion et login7.
  • Connexion fixe non fermée lorsque le nom de la base de données est incorrect.
  • azidentity Passé à la version 1.6.0.

v1.7.2 (mai 2024)

  • Correction de la prise en charge des types Nullable avec Always Encrypted lors de la copie en bloc.
  • Correction de la gestion de la portée de l’authentification Entra.

v1.7.1 (avril 2024)

  • Implémenté Always Encrypted avec le columnencryption paramètre de connexion.
  • Ajout d’un fournisseur de clés de chiffrement de colonnes Azure Key Vault (akv).
  • Ajout des types fedauth ActiveDirectoryDeviceCode et ActiveDirectoryAzCli.
  • Valeurs supplémentaires acceptées pour le encrypt paramètre en mode TDS 8.0.
  • Prise en charge des certificats DER ajoutée.
  • Paramètre de connexion ajouté multisubnetfailover .
  • Configuration autorisée de Kerberos (krb5) via des variables d’environnement.
  • Ajout de la possibilité de changer le mot de passe à la connexion.
  • Correction des correspondances entre les LCID et les pages de codes.
  • Correction de la troncation des paramètres de sortie de type chaîne.
  • Correction de la gestion des valeurs NULL de type UniqueIdentifier dans Scan().
  • Correction de la gestion des chemins de canaux nommés.

v1.7.0 (février 2024)

  • Ajout du type NullUniqueIdentifier avec prise en charge de la sérialisation JSON et texte.

v1.6.0 (août 2023)

  • Ajout du support TDS 8.0 avec encrypt=strict.

v1.5.0 (août 2023)

  • Intégration du package npipe aux dépendances du projet pour les connexions par canal nommé.
  • Ajout de la prise en charge de la détection du port DAC (connexion administrateur dédiée).
  • Ajout des méthodes UniqueIdentifierMarshalText et UnmarshalJSON.
  • Activation de la résolution DNS locale avec des numéroteurs personnalisés.
  • Correction des builds mips et mipsel.

v1.1.0 (juin 2023)

  • Ajout du service de navigateur de ports DAC.

v0.16.0 (août 2022) - Première version du fork Microsoft

  • Migration vers la version 1.0 de azidentity pour l’authentification Microsoft Entra.
  • Paramètre de connexion ajouté tlsmin pour imposer une version TLS minimale.