|
|
1
2
数据库项目的构建方式与普通项目不同。如果要在此项目内执行脚本,我的建议是扩展与msbuild兼容的关联项目(csproj、vbproj等),并使用所选工具从中引用/执行脚本。 如何实现它取决于您自己,例如,您可以连接到 BeforeBuild 目标和执行脚本使用 SqlExecute 任务。 fwiw,我们必须支持SQL Server 2000、2005、2008+,因此任务变得更加困难;考虑nvarchar(max)(2005+)与ntext(2000+)以及版本之间的所有sp重命名等。我们还需要一个开发人员、QA和安装人员用来确保一致性的脚本。因此,我们的方法是一个自定义工具,它允许在脚本中替换令牌/关键字,从而在不同的SQL Server版本和客户安装(例如,用户/登录详细信息、数据库名称)之间提供灵活性,并集成到各种技术中,以便脚本可以使用wix proj从命令行、msbuild、msi自定义操作运行。ECTS,或者我们需要它们运行的任何东西。 |
|
2
1
可以生成数据库项目。 它们不能运行-它们可以部署。 部署时,项目会先生成,然后再部署。代码将与预构建和后期构建脚本以及预部署和后期部署脚本一起部署。 因此,如果希望在构建项目时运行脚本,则需要查看项目属性中“构建事件”下的预构建和后期生成。 |