What's new in Microsoft JDBC Driver for SQL Server 12.6.1

Mar 7, 2024
  • Fixed 'EXEC' escape syntax for CallableStatements

New in Microsoft JDBC Driver for SQL Server 12.6.0 (Feb 3, 2024)

  • Feature:
  • Java 21 support
  • Allow calling of stored procedures directly through use of new connection property useFlexibleCallableStatements
  • Added useDefaultJaasConfig connection string property
  • Added useDefaultGSSCredential connection string property
  • Added calcBigDecimalPrecision connection string property
  • Added new named loggers for connection open retries and idle connection resiliency reconnects
  • Changes:
  • Changed how IBM JDK is checked for prevent issues with OSGi environments
  • Properly synchronized all calls to MSAL
  • Added additional errors that should translate to RMFAIL
  • Changed how Timestamps are used in BulkCopy
  • Changed socketTimeout to ensure it's properly less than loginTimeout
  • Adjusted PreparedStatement cache so it's cleared before every execute
  • Upgraded to newer Bouncycastle dependencies
  • Updated dependencies
  • Fixes :
  • Fixed a missing null check for e.getCause()
  • Fixed locks in IOBuffer to prevent deadlock issues that could arise
  • Fixed an issue with Timestamps and bulk copy for batch insert
  • Fixed missing getters and setters for useBulkCopyForBatchInsert
  • Fixed bulkcopy metadata query to make use of cached data, if available
  • Fixed a missing BigDecimal scale check for TVP values
  • Fixed schemaPattern in SQLServerDatabaseMetadata to ensure its properly escaped
  • Fixed an issue where a null SQLState was returned when trying to convert a date to a long
  • Fixed getMetaData error for queries containing TOP
  • Fixed a table name parsing issue when using batch inserts
  • Fixed an issue with ParameterMetadata and invalid indexes
  • Fixed behavior of ActivityID in ActivityCorrelator
  • Fix to ignore computed columns when using bulkcopy for batch insert
  • Fixed driver behavior concerning signatures when using Java Key Store and Azure Key Vaul
  • Fixes getObject()'s erroneous conversion of DateTimeOffset

New in Microsoft JDBC Driver for SQL Server 12.4.2 (Oct 31, 2023)

  • Fixed issues in 12.4.2:
  • Reverted the IBM check to vendor check and added an additional vm name check to remove false positives

New in Microsoft JDBC Driver for SQL Server 9.2.1.0 (Mar 3, 2021)

  • Fixed an issue with client secret being empty during ActiveDirectoryServicePrincipal authentication in Azure environment.

New in Microsoft JDBC Driver for SQL Server 6.2.0.0 (Jul 6, 2017)

  • Performance improvements for Prepared Statements:
  • Improved performance for Prepared Statements through caching (including prepared statement handle re-use). This behavior can be tuned using new properties to fit your application’s needs.
  • Federal Information Processing Standard (FIPS) enabled Java virtual machines:
  • The JDBC Driver can now be used on Java virtual machines (JVMs) that run in FIPS 140 compliance mode to meet federal standards and compliance.
  • Kerberos Authentication Improvements. The JDBC Driver now has support for:
  • Principal/Password method for applications where the Kerberos configuration cannot be modified or is unable to retrieve a new token or keytab. This method can be used for authenticating to a SQL Server that only allows Kerberos authentication.
  • Cross-realm authentication using Kerberos integrated authentication without explicitly setting the server service principal name (SPN). The driver now automatically computes the REALM even when it has not been provided.
  • Kerberos constrained delegation by accepting impersonated user credentials as a GSS credential object via data source. This impersonated credential is then used to establish a Kerberos connection.
  • Added Timeouts. The JDBC driver now supports the following configurable timeouts you can change based on your application’s needs:
  • Query Timeout to control the number of seconds to wait before a timeout occurs when running a query
  • Socket Timeout to specify the number of milliseconds to wait before a timeout occurs on a socket read or accept

New in Microsoft JDBC Driver for SQL Server 4.0.912.1 (Jan 24, 2011)

  • 1765616 DatabaseMetadata.getTypeInfo now returns new java.sql.Type values for date, time, datetime2, datetimeoffset for katmai and higher versions
  • 1764334 Added support for tracing of JDBC XA Timeout and XIDs
  • 1750318 SQLServerDatabaseMetaData functions would now work correctly when a pooled connection is re-used.
  • 1768845 The behaviour of setTimestamp and updateTimestamp are made consistent with respect to rounding. The data will be rounded to 7 decimals first by the driver before it is sent to the server.
  • 1770134 updateTime on a time backend type with the max value(23:59:59.999) now results in correct rounding behavior
  • 1761042 DataSource Boolean properties now log exit calls
  • 1750330 Updated XA SQL Script to avoid misleading errors on first run
  • 1761393 Improved tracing for unwrap methods