簡體   English   中英

ssdt dacpac:如何防止 dacpac 在刪除包含數據的表中的列時產生錯誤

[英]ssdt dacpac: how to prevent dacpac to generate the error when dropping columns in a table with data

我正在刪除帶有數據的表xxx一列。 DACPAC 正在生成如下檢查。

IF EXISTS (select top 1 1 from [dbo].[xxx])
    RAISERROR (N'Rows were detected. The schema update is terminating because data loss might occur.', 16, 127) WITH NOWAIT

所有的數據遷移都在預部署腳本中完成。 目前我已經手動注釋掉了。

如何防止它自動生成?

Block incremental deployment if data loss might occurred VS\\Publish\\Advanced\\General 中Block incremental deployment if data loss might occurred取消選中Block incremental deployment if data loss might occurred

在此處輸入圖片說明

對於那些使用 sqlpackage 部署 dacpac 或使用 Azure devops 的人,請在附加參數中設置以下內容,它應該可以工作。

/p:BlockOnPossibleDataLoss=False

這很可能是由於像觸發器這樣的依賴關系。

如果您不確定是什么對象導致它,您可以使用以下腳本來識別

select * from sys.objects
where Object_id = (OBJECT_ID('<name of object blocking'))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM