SQL Server:设计器不兼容的生成脚本

问题描述 投票:0回答:1

我们有一个用于测试箱的SQL Server 2012和一个用于生产箱的SQL Server 2005。最近,我们迁移到了自动部署脚本,该脚本在部署过程中执行SQL脚本。

[我们遇到了一个问题,SSMS使用设计器中的“生成脚本”生成的脚本输出了与SQL Server 2005不兼容的脚本。它添加了语句SET(LOCK_ESCALATION = TABLE),它是SQL Server 2008 +]

我们已经尝试将数据库的兼容性更改为SQL Server 2005,但这不能解决问题。有趣的是,当使用“脚本表为”>“创建到”>“新建查询窗口”时,不包含此语句。

[存在SSMS设置“将脚本设置匹配到源= false”,但是,这要求您全局设置SQL Server版本,这对我们来说不是一个选择,因为我们维护着各种SQL Server版本。有没有一种方法可以降低“生成脚本”的兼容性?

sql-server sql-server-2005 sql-server-2012 ssms
1个回答
0
投票

[在SSMS中运行“生成脚本”任务时,您可以定义要为其创建脚本的服务器版本:

enter image description here

这应确保不使用SQL Server 2005中不存在的命令或选项。

但是我第二个@ADyson的观点-SQL Server 2005已经死了很多,在这样的旧版本的SQL Server上运行生产代码是有风险的……您真的应该升级] >尽快更新到最新版本!

© www.soinside.com 2019 - 2024. All rights reserved.