首页 > 解决方案 > SQL Server 数据库兼容性级别是否否定 SQL Server 版本兼容性

问题描述

例如,我有一个应用程序说它支持 SQL Server 2005 到 SQL Server 2008。如果我将该数据库传输到 SQL Server 2017 机器并将兼容模式设置为 2008,它的行为是否应该与它真的在SQL Server 2008 盒子?我知道兼容模式确实将功能集和行为限制在 SQL Server 2008 中。所以我的一部分认为这应该可以正常工作。但我的另一部分想知道是否还有其他我没有考虑到的事情可能是一个问题。有没有人有过这种情况又回来咬你的经历?

标签: sqlsql-server

解决方案


“将数据库升级到 SQL 2017 服务器并将兼容模式设置为 2008,如果它的行为就像它真的在 SQL 2008 服务器上一样”

是的,这是正确的。

这也恰好是微软推荐的升级过程。按照微软的说法,升级到 SQL Server 的最新版本,但保持源数据库的兼容性级别。

如果在旧版本的 SQL Server 上进行了完整的数据库备份,但在新版本上进行了还原,则数据库兼容性级别与旧版本相同,除非新版本不支持。在这种情况下,数据库兼容性级别将切换到支持的最低级别。

更多herehere


推荐阅读