在夜间作业中编写 SQL 2005 数据库结构脚本

Posted

技术标签:

【中文标题】在夜间作业中编写 SQL 2005 数据库结构脚本【英文标题】:Scripting SQL 2005 database structure in a nightly job 【发布时间】:2008-11-06 17:36:17 【问题描述】:

我想要一份每晚甚至每周只运行一次的工作,它会生成我们开发数据库的脚本。它们往往会被修改,并且开发人员习惯于在不编写脚本或记录它们的情况下进行更改。

我想创建一个工作,该工作基本上可以模拟我右键单击并执行任务 > 生成脚本时发生的情况。这意味着如果发生了一些糟糕的事情,我们能够重建结构(内容是“可生成的”),并且可以备份并运行,而无需从可能同时丢失的备份中恢复就像发生了不好的事情。

我已经阅读了有关 sqlpubwiz 的信息,但我在开发机器上找不到它,只能在我的本地机器上找到它,我只安装了客户端工具。我走对路了吗?

【问题讨论】:

【参考方案1】:

我会建议一种对我来说效果很好的不同方法。运行一个夜间作业,删除开发数据库,​​从已知配置中恢复它们,然后应用所有已提交到源代码控制的更改脚本。

这种方法的优点:

每晚都会测试您的更改脚本 没有无脚本的数据库更改 开发人员可以快速学会创建更改脚本并将其提交到源代码管理

当我采用这种方法时,我使用了最新的生产备份作为还原源。这会带来不确定性,因为生产中的数据更改可能会导致意外发生,但如果您需要快速响应生产问题,则效果很好。

【讨论】:

【参考方案2】:

Database Publishing Wizard 可以从命令行运行。

【讨论】:

【参考方案3】:

APEXSQL Script - 使用命令行版本 - 只需检查版本控制或其他内容

【讨论】:

以上是关于在夜间作业中编写 SQL 2005 数据库结构脚本的主要内容,如果未能解决你的问题,请参考以下文章

如何在 PHP + MS SQL 应用程序中向用户显示有关维护和夜间作业的消息

如何转换SQL Server 2008数据库到SQL Server 2005

在SQL SERVER 2005中,右击一表,选择"编写脚本为"->"CREATE到"一新查询窗口失败

命令提示符中运行SQL Server 2005

SQL SERVER 2008 R2 数据库附加到 SQL server 2005,怎么整

如何利用pg_dumpall备份的文件,恢复数据库