2012-07-23 97 views
0

我想下TortoiseSVN的SQL脚本自动执行承诺(的COMMITED文件列表已经存在)。TortoiseSVN的SQL脚本自动化

依我之见:

当执行Update命令执行哪个做以下的批处理文件:添加

  1. 获取列表/修改* .sql文件(也许它们复制到一些临时目录)
  2. 执行使用SQLCMD这些文件(如果文件被复制到一个单独的目录,然后这可以使用for %f in (c:\MySQLScripts\*.sql) do sqlcmd -i %f完成)

为T这里有一个针对这种流程的解决方案(其他任何针对相同目标的流程)?

回答

0

几年前,我们试图做你的建议是什么,并发现统筹脚本执行,使所有的依赖关系(例如,外键)的解决是非常复杂的,甚至是不可能的。

我们定居在使用展鹏SQL源控制(与Subversion集成,例如TortoiseSVN)和SQL从源头控制部署进行比较。你应该看看:http://www.red-gate.com/

另一种方法是使用管理工作室“生成脚本”功能(在数据库中的对象资源管理器,任务右击 - >生成脚本)。它将创建一个包含所有数据库对象的“主脚本”。您可以源代码控制此脚本,并使用sqlcmd执行它。我不能说这个工具如何管理上面提到的依赖关系。