SQL Server 2016 中数据库引擎功能的中断性变更

适用于:SQL Server 2016 (13.x) 及更高版本

本主题介绍 SQL Server 2016 (13.x) 数据库引擎 和更低版 SQL Server 中的中断性变更。 这些更改可能导致基于 SQL Server的早期版本的应用程序、脚本或功能无法继续使用。 在进行升级时可能会遇到这些问题。

SQL Server 2016 (13.x) 中的重大更改

  • sys.dm_io_virtual_file_stats 的 sample_ms 列已从 int 扩展到 bigint 数据类型。

  • sys.fn_virtualfilestats 的 TimeStamp 列已从 int 扩展到 bigint 数据类型。

  • 在数据库兼容级别 130 以下,通过考虑导致不同转换值的毫秒小数部分,从 datetimedatetime2 数据类型的隐式转换显得更加准确。 只要 datetime 和 datetime2 数据类型之间存在混合比较情况,就需要使用 datetime2 数据类型的隐式转换。 有关详细信息,请参阅此 Microsoft 支持文章

  • 数据库兼容性级别为 130 时,在某些数字和日期时间数据类型之间执行隐式转换的操作显示出更高的准确性,并且可能导致不同的转换值。 这包括使用需要计算的函数,例如,DATEDIFFROUND。 有关详细信息,请参阅此 Microsoft 支持文章

先前版本

有关 SQL Server 2014 (12.x) 和一些早期版本中重大更改的信息,请参阅 SQL Server 2014 中数据库引擎功能的重大更改

较早版本的 SQL Server 的存档文档

我们通过多组存档网页来留存较早版本的 Microsoft SQL Server 的相关文档。 搜索引擎(例如 Bing.com 和 Google.com)不会处理存档网页。 但是,可在 Docs previous-versions/sql/ 地址中看到这些存档 :

这些存档至少包括以下较早版本的相关文档:

  • SQL Server 2014
  • SQL Server 2012
  • SQL Server 2008 R2
  • SQL Server 2008
  • SQL Server 2005

SQL Server 2014 文档仍在主要的 Docs 地址中提供。

SQL Server 2019 文档在主要的 Docs 地址中提供。 然后使用页面顶部附近的“版本控制”下拉列表来选择其他感兴趣的版本。

有关 SQL Server 早期版本的文档的详细信息,请参阅以前版本的 SQL Server 文档

另请参阅

SQL Server 2016 中不推荐使用的数据库引擎功能
SQL Server 2016 中废止的数据库引擎功能
SQL Server 数据库引擎的向后兼容性
ALTER DATABASE 兼容级别 (Transact-SQL)
适用于 Windows 的 SQL Server 2016 或 SQL Server 2017 在处理某些数据类型和不常见操作方面所做的改进