gpt4 book ai didi

c# - SSDT 部署后脚本 - 运行文件夹中的所有脚本

转载 作者:行者123 更新时间:2023-11-30 12:44:23 25 4
gpt4 key购买 nike

我在 SQL 项目中有一个 PostDeployment 脚本,它在发布时运行项目中的许多其他脚本:

:r .\Scripts\Script1.sql 
:r .\Scripts\Script2.sql
:r .\Scripts\Script3.sql
:r .\Scripts\Script4.sql

不必在每次将新脚本添加到源代码管理 (TFS) 中的 Scripts 文件夹时手动更新它,是否可以只迭代和执行 Scripts 文件夹中的所有 SQL 脚本?

最佳答案

将其添加到您的项目文件中

 <ItemGroup>
<DataScripts Include="Data\*.sql" />
</ItemGroup>
<Target AfterTargets="BeforeBuild" Name="CreateDataScript">
<Delete Files="DataScript.sql" />
<WriteLinesToFile Overwrite="false" File="DataScript.sql" Lines=":r .\%(DataScripts.Identity)" />
</Target>

DataScripts 属性是包含您要运行的所有 sql 脚本的文件夹。这会在您进行构建之前生成文件,因此您可以在部署后脚本中引用它而不会出现这样的问题。

:r .\DataScript.sql

这可用于动态生成可在部署前/部署后脚本中引用的脚本

关于c# - SSDT 部署后脚本 - 运行文件夹中的所有脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28561835/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com