SQL 在 azure devops 管道中部署时遇到错误

Facing errors while SQL deployment in azure devops pipeline

我在 azure devops.but 的发布管道中使用 sql DACPAC 部署类型,出现以下错误。我不知道 SQL.Any 个建议?

Publishing to database 'database_name' on server 'Server_name'. 
Initializing deployment (Start) 
*** The column [dbo].[xxxx].[yyyy] is being dropped, data loss could 
occur. 
Initializing deployment (Complete) 
Analyzing deployment plan (Start) 
*** If this deployment is executed, changes to [dbo].[xxx2] might 
introduce run-time errors in [dbo].[yyyy2]. 
Analyzing deployment plan (Complete) 
Updating database (Start) 
An error occurred while the batch was being executed. 
Updating database (Failed)

同意迈克尔的任命。

The column [***] is being dropped, data loss could occur.

If this deployment is executed, changes to [] might introduce run-time errors in [].

这些都是意料之中的,因为不安全造成的。我假设您对数据库做了一些更改,但不确定它是否会破坏目标数据库上的任何内容。现在,它将阻止部署,因为服务器无法确定更改是否 安全


  • 第一个解设置为/p:BlockOnPossibleDataLoss=false.

BlockOnPossibleDataLoss 默认值为 true,这意味着如果检测到可能的数据丢失则停止部署。而falseSqlPackage.exe忽略它们。

所以,请执行任务,然后找到并输入上述参数到Additional SqlPackage.exe Arguments:


  • 输入第二解 /p:TreatVerificationErrorsAsWarnings=true

注意: 如果第一个解决方案不适合您,则应使用第二个解决方案。

设置TreatVerificationErrorsAsWarnings=true表示将验证错误作为警告处理以获得完整的问题列表,并且它可以绕过允许发布操作在第一次错误发生时停止的限制。


查看此 doc 以获得更多发布操作。