Skip to content

Microsoft ODBC Driver 18.7.1: smaller vectors, easier configuration, and better cloud routing

Microsoft ODBC Driver 18.7.1 for SQL Server is now generally available.


This release continues the work we started in 18.6 to support modern application patterns while making the driver easier to deploy and operate. It adds float16 vector support, brings familiar connection-string names to ODBC, improves routing for Azure SQL Database Hyperscale, expands platform coverage, and removes a Windows installation dependency.


It also includes a substantial set of reliability, security, and diagnostic fixes. Many of those changes happen below the application layer.


More compact vector workloads


ODBC Driver 18.6.1 introduced support for the SQL Server vector data type using 32-bit floating-point values. Version 18.7.1 adds support for float16 vectors.


A float16 element uses two bytes instead of the four bytes required by float32. For applications working with large embedding collections, that can reduce the amount of vector data stored and moved between the application and the database. The right precision depends on the model and workload, but applications that can use half-precision vectors now have that choice through ODBC.


This matters because vector support is becoming part of the normal database application stack. You should not need a separate connectivity path just because an application combines relational data, business data, and embeddings. Adding float16 support brings ODBC forward with the vector capabilities being added across SQL Server and Azure SQL.


Connection strings that travel more easily


ODBC has accumulated its own connection-string vocabulary over many years. Some settings use different names in ODBC, JDBC, OLE DB, and SqlClient even when they configure the same behavior.


Version 18.7.1 accepts four additional connection-string keywords:



  • MultipleActiveResultSets

  • FailoverPartner

  • WorkstationID

  • ConnectTimeout


The first three are aliases for existing ODBC settings. For example, MultipleActiveResultSets maps to MARS_Connection, while WorkstationID maps to WSID. Existing connection strings continue to work.


ConnectTimeout maps to the ODBC login timeout. It supports the same behavior as the underlying ODBC setting, including zero for an infinite timeout and a default of 15 seconds.


These additions reduce the small but persistent differences you encounter when moving configuration between Microsoft SQL drivers. Shared configuration systems, deployment templates, and migration tools can use more consistent names instead of maintaining driver-specific translations for common settings.


We also spent some time on details that tend to cause production surprises: case-insensitive matching, precedence when an alias and canonical name both appear, invalid values, timeout limits, and DSN interaction.


Better routing for Hyperscale read workloads


Azure SQL Database Hyperscale named replicas provide independent read scale for applications with large or isolated read workloads. ODBC Driver 18.7.1 adds load-balanced routing for named-replica reader endpoints.


Applications can connect through the reader endpoint and allow the service and driver to handle routing across the available read capacity. That makes the endpoint more useful for workloads such as reporting, analytics, and read-heavy application services without requiring applications to manage individual replica destinations themselves.


The driver already sits at the point where connection intent becomes a physical connection. Supporting this routing behavior there keeps replica topology out of application code.


Less setup on Windows


The Windows package no longer requires the Microsoft Visual C++ Runtime to be installed separately.


That removes a prerequisite from new machines, container images, automated build agents, and managed desktop deployments. It also reduces one of the common differences between a machine where an application was built and a clean machine where it is installed.


The change is small from an application-code perspective. For deployment owners, it means fewer moving parts and one less prerequisite to diagnose.


More Linux distributions


Version 18.7.1 adds support for:



  • Alpine Linux 3.23

  • SUSE Linux Enterprise Server 16

  • Ubuntu 26.04


Platform support is more than producing an RPM, DEB, or APK. The driver must install cleanly, connect successfully, upgrade from prior versions where packages are available, and coexist with ODBC Driver 17 on supported configurations.


The installer automation used for this release covers AMD64 and ARM64 variants across RHEL, Azure Linux, Ubuntu, Debian, Alpine, and supported SUSE environments. Windows coverage includes Windows 11 and Windows Server 2019, 2022, and 2025, with fresh installation, upgrade, coexistence, and MSI repair scenarios where applicable.


Ubuntu 26.04 currently receives fresh-install validation because previous packages are not yet available from the Ubuntu 26.04 Microsoft package repository. The test pipeline records that distinction instead of treating unsupported upgrade combinations as covered.


Reliability work below the application


Database drivers operate on untrusted network input, coordinate asynchronous operations, manage native memory, and translate between platform APIs and the Tabular Data Stream protocol. Small mistakes in those paths can produce failures far away from the code that caused them.


The 18.7.1 release addresses several of those cases:



  • Protocol parsing is more defensive when processing malformed LOGINACK and ENVCHANGE tokens.

  • Memory corruption issues were corrected in the SQL Server Network Interface packet pool and on Linux ARM64 and macOS ARM64.

  • Multiple Active Result Sets connections now clean up memory correctly when a connection ends abruptly.

  • Asynchronous timeout handling was corrected for zero-length partially length-prefixed data and data-classification tokens.

  • OpenSSL errors left on a calling thread are handled correctly.

  • XA distributed transactions recover more reliably from SQL Server connectivity failures.

  • Always Encrypted performs less redundant logging while acquiring Azure Key Vault tokens.

  • Tabular Data Stream packet tracing reports the correct byte count for overlapped named-pipe writes.


Most applications will never encounter the exact failure conditions behind these fixes. That is the goal. A malformed server response should produce a controlled error. A dropped connection should release its memory. A timeout should behave consistently even when it arrives in the middle of an unusual protocol sequence.


Get ODBC Driver 18.7.1


Microsoft ODBC Driver 18.7.1 for SQL Server is available now for Windows, Linux, and macOS.



If your application uses vectors, Azure SQL Database Hyperscale named replicas, shared connection configuration, or newer Linux distributions, 18.7.1 contains changes you can use immediately. For other applications, the deployment, protocol, memory-management, and diagnostic fixes provide a strong reason to include this release in your normal driver update cycle.

Microsoft Tech Community originally posted this article on 10 September 2026 at 11:04 PM.

Leave a Reply