返回

SQL Server 创建表报错:'OPTIMIZE_FOR_SEQUENTIAL_KEY' is not a recognized CREATE TABLE option.

2025-06-09 SQL Server 1955 0

这个错误 'OPTIMIZE_FOR_SEQUENTIAL_KEY' is not a recognized CREATE TABLE option. 表示你的目标 SQL Server 版本过旧,不支持这个选项。

OPTIMIZE_FOR_SEQUENTIAL_KEY 是 SQL Server 2019(及 Azure SQL) 引入的索引优化特性,旨在提升顺序键(如自增 ID)高并发写入的性能。如果你的服务器是 SQL Server 2016、2017 或更早版本,就会报出该选项“无法识别”的错误。

解决方法

选项一:删除该选项

直接移除 OPTIMIZE_FOR_SEQUENTIAL_KEY = ON/OFF 即可解决兼容性问题。这是最简单直接的修复方式,适用于所有 SQL Server 365、2016、2017 版本。

选项二:升级至 SQL Server 2019 或 Azure SQL

如果你希望利用这个性能优化功能,可将 SQL Server 升级到 2019 或使用 Azure SQL。升级后即可启用 OPTIMIZE_FOR_SEQUENTIAL_KEY 特性。

选项三:脚本导出时设定目标版本

如果在 SSMS、Visual Studio 或 DevOps 中自动生成脚本,务必指定正确的 SQL Server 目标平台为你所部署的版本(如 2017 或 2016)。这样生成的脚本就不会包含该新选项。

总结建议

当前使用的是 2016/2017 或更早版本,删除建表脚本中的 OPTIMIZE_FOR_SEQUENTIAL_KEY。

如果需要该优化功能,升级到 SQL Server 2019 或 Azure SQL。

使用自动化脚本生成工具,配置目标版本以避免生成不兼容选项。

顶部