我正在使用DACPAC作为数据库部署的一部分。相同的包被部署到dev/暂存/prod环境中。我们想要做的是用管理用户等数据作为数据库的种子,例如,管理用户在每个环境中都有不同的用户‘d。
如果我能够在DACPAC (或其他)的发布配置文件中放置一个变量,那就太好了,但我想我也可以通过查看@@servername来实现这一点。有更好的方法来完成这个任务吗?
发布于 2014-09-18 22:06:09
所以,如果在中使用SSDT,这是非常干净的。
转到项目属性、SQLCmd选项卡并输入任何变量。

然后在你的脚本中使用它们。

在visual studio中发布时,您将获得一个很好的UI,它允许您为变量指定值或加载默认值(如果指定的话)。

发布概要文件只是一个MSBuild项目格式的xml文件,所以没有什么疯狂的事情发生。如果您正在自动部署,则可以使用所使用的dacpac部署工具指定变量的默认值。我使用的是SqlPackage,它是SSDT的一部分。命令行参考
Powershell中的用法:
& $sqlpackageexe /Action:Publish /SourceFile:$dacpac /Profile:$dacprofile /TargetConnectionString:$connstring /Variables:DbEnvironment=Development
https://stackoverflow.com/questions/25922700
复制相似问题