在夜间作业中编写 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到"一新查询窗口失败