【问题标题】:Dropping or emptying tables on SSDT publish在 SSDT 发布上删除或清空表
【发布时间】:2018-05-22 04:14:29
【问题描述】:

我可能只是愚蠢并且遗漏了一些简单的东西,但是我该如何做到这一点,所以当我发布我的 SSDT 项目时,它会清空或删除我的数据库中的表,而没有在我的发布中实际将“CreateNewDatabase”设置设置为 true个人资料。

我每次发布时都会运行一些部署后插入,这会导致每次都出现重复的行。

【问题讨论】:

    标签: sql sql-server visual-studio publish sql-server-data-tools


    【解决方案1】:

    澄清一下,每次部署时,您都希望清除所有表的内容,因为您在部署后脚本中有大量插入语句来创建所需的数据,因此您希望表为空?

    如果这是正确的,那么这不是通常使用 ssdt 的方式,通常数据库中的重要位是数据,因此您不想在发布时清除每个表,因此没有任何内置内容,除了创建新数据库。

    话虽如此,如果您不需要任何数据,那么您处于一个很好的位置,我们遇到的大多数问题都是试图确保我们不会意外删除任何数据 :)

    有几种方法,您可以将您的插入语句更改为合并语句,您可以从 github 获得一个名为 sp_generate_merge 的过程,它会生成一个您可以使用的合并语句,这将使您的表看起来像部署后脚本中的数据,这是我的首选。

    如果表的行数超过 2,000 行,则合并语句可能不正确,因此我会在插入数据之前删除 truncate 表。

    希望我的问题是正确的:)

    埃德

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-07-29
      • 1970-01-01
      • 2019-11-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多