允许(一次)删除数据库项目中的列

时间:2013-09-26 14:33:33

标签: visual-studio database-project

我想在现有表中删除一列。当我只是从表的创建脚本中删除它时,它将导致部署错误(数据丢失...)。我想允许(在这种情况下)列丢弃。你会怎么做?

2 个答案:

答案 0 :(得分:6)

要禁用数据丢失错误:

  1. 单击架构比较文件中的“选项”图标。
  2. 取消选中“阻止可能的数据丢失”。
  3. 该设置将仅针对该1个架构比较进行更改,并且将保存在架构比较文件中。如果您只想执行此操作,则需要在删除列后重新启用该选项。

答案 1 :(得分:1)

我们通过创建PreDeployment脚本来删除列来完成此操作。推理是我们不希望允许数据库中所有对象的数据丢失。

您只需创建一次自动版本检查(请参阅我对另一篇文章Nontrivial incremental change deployment with Visual Studio database projects的回答,了解如何使用SSDT自动执行此操作。)

或者您可以将脚本提供给devops,并在安装手册中包含说明,以便针对特定版本运行一次。

发布后,您可以删除PreDeployment脚本。