Breaking changes to Database Engine features in SQL Server 2016
Applies to: SQL Server 2016 (13.x) and later versions
This article describes breaking changes in the SQL Server 2016 (13.x) Database Engine and earlier versions of SQL Server. These changes might break applications, scripts, or functionalities that are based on earlier versions of SQL Server. You might encounter these issues when you upgrade.
Breaking changes in SQL Server 2016
The sample_ms column of
sys.dm_io_virtual_file_stats
has expanded from an int to a bigint data type.The TimeStamp column of
sys.fn_virtualfilestats
has expanded from an int to a bigint data type.Under database compatibility level 130, implicit conversions from datetime to datetime2 data types show improved accuracy by accounting for the fractional milliseconds, resulting in different converted values. Use explicit casting to datetime2 datatype whenever a mixed comparison scenario between datetime and datetime2 datatypes exists. For more information, see this Microsoft Support Article.
Under database compatibility level 130, operations that perform implicit conversions between certain numeric and datetime data types show improved accuracy and can result in different converted values. This includes usage of functions that require calculations such as
DATEDIFF
andROUND
. For more information, see this Microsoft Support Article.
Previous versions
For information about breaking changes in SQL Server 2014 (12.x), and in some earlier versions, see Breaking Changes to Database Engine Features in SQL Server 2014.
Archived documentation for old versions of SQL Server
We accumulate and retain documentation for very old versions of Microsoft SQL Server, in sets of archived webpages. The archived webpages are not processed by search engines, such as bing.com and google.com. Yet you can see these archives at our Docs previous-versions/sql/ address:
These archives include the documentation for at least the following older versions:
- SQL Server 2014 (12.x)
- SQL Server 2012 (11.x)
- SQL Server 2008 R2 (10.50.x)
- SQL Server 2008 (10.0.x)
- SQL Server 2005 (9.x)
SQL Server 2014 documentation is still available on our main Docs address.
SQL Server 2022 documentation is available on our main Docs address. Then, you can use the versioning dropdown near the top of the page, to select another version of interest.
For more information about the documentation for previous versions of SQL Server, see Previous versions of SQL Server documentation.
See also
- Deprecated Database Engine Features in SQL Server 2016
- Discontinued Database Engine Functionality in SQL Server 2016
- SQL Server Database Engine Backward Compatibility
- ALTER DATABASE Compatibility Level (Transact-SQL)
- SQL Server 2016 or SQL Server 2017 on Windows improvements in handling some data types and uncommon operations