使用SSDT发布数据?

时间:2013-04-16 05:20:40

标签: sql-server-data-tools

我有一个SSDT项目。发布新版本时,我也希望在数据库中发布/初始化一些数据。可以使用SSDT完成吗?

4 个答案:

答案 0 :(得分:4)

可以做到,但可能会很棘手。如果您在项目中设置了一个可用于“新”版本的变量,您可以将其放在部署后脚本中作为运行一系列插入的部分,但仅限于“新”类型。 / p>

正如David所说,更好的方法可能是使用Red-Gate的数据比较或在创建数据库后运行脚本。可以在部署后的脚本中执行此操作,但可能会很棘手。

这样的事情可行:

IF '$(DeployType)' = 'New'
BEGIN --"New" release scripts
PRINT 'Post-Deploy Scripts for release.'
:r .\InsertScript1.sql
:r .\InsertScript2.sql
--etc
END --"New" release scripts

答案 1 :(得分:2)

这在SSDT中是不可能的。 current guidance将使用部署后脚本。

Redgate ReadyRoll提供了SSDT用户熟悉的许多经验,但改进了static data management以及许多其他改进。

答案 2 :(得分:1)

当我们将Merge脚本放置在项目的特定子文件夹中时,它们会自动包含。

答案 3 :(得分:0)

取决于你所做的事情,桌面价值的教师可能需要关注:

substring()

这些可以通过SSDT轻松传输和比较。

有关矿石信息,请参阅https://www.simple-talk.com/sql/sql-training/table-value-constructors-in-sql-server-2008/