11

我们在 SQL Server Management Studio (SSMS) 中启用“工具 ==> 选项 ==> 设计器 ==> 表和数据库设计器 ==> 自动生成更改脚本”。在更改我们的数据库架构时,我们保存了脚本,并且由于我们在运行我们的应用程序的所有机器上安装了数据库迁移工具,我们可以在下一次软件版本更新期间同步架构。

我们最近将我们的开发副本和一些生产服务器切换到 SQL Server 2008。但是,我们仍然有几十个 SQL Server 2005 在野外运行我们的软件。我们暂时不打算升级这些。

问题很简单。SSMS 生成的脚本并不总是适用于 SQL Server 2005。SMSS 正在向命令中添加额外的元数据(例如,关于锁升级)。要使用 2005 制作我们的脚本,我们必须手动删除额外的信息,否则脚本不会运行。

有没有办法配置 SSMS 以生成与 SQL Server 2005 兼容的脚本?是否有工具可以自动摆脱额外的 SQL,或者至少让我们知道哪些文件有问题?

4

3 回答 3

13

在 SQL Server management studio 2008 中转到工具 -> 选项 -> SQL Server 对象资源管理器 -> 脚本并选择“服务器版本脚本”并将其更改为 SQL Server 2005。

于 2009-01-11T00:59:57.843 回答
2

更改选项的推荐解决方案似乎是 corerct 但是它仍然会在我的数据库上生成 ALTER TABLE SET (LOCK_ESCALATION = TABLE) (我什至设置了兼容模式 90)

于 2009-02-02T22:21:43.663 回答
0

我还没有使用过 2008 管理工作室,但在以前的每个版本中,您都可以在某处的选项中将脚本设置为特定版本的 SQL Server。

出于类似的原因,我将 2005 管理工作室设置为生成 2000 个兼容脚本。

于 2009-01-11T00:43:00.750 回答