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

2024-05-16

我在 azure Devops 的发布管道中使用 sql DACPAC 类型的部署。但出现以下错误。我对 SQL 不了解。有什么建议吗?

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)

同意迈克尔的任命。

列 [***] 正在被删除,可能会发生数据丢失。

and

如果执行此部署,则更改为 [] 可能会介绍 [ 中的运行时错误].

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


  • 第一个解决方案 is set /p:BlockOnPossibleDataLoss=false.

The BlockOnPossibleDataLoss默认值为true,这意味着如果检测到可能的数据丢失,则停止部署。和false let SQLPackage.exe别理他们。

所以,请进入任务,然后找到并将上述参数输入到其他 SqlPackage.exe 参数:


  • The 第二种解决方案正在输入/p:TreatVerificationErrorsAsWarnings=true

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

Set TreatVerificationErrorsAsWarnings=true意味着将验证错误视为警告以获取完整的问题列表,并且它可以绕过允许发布操作在发生第一个错误时停止的限制。


看到这个以获得更多的发布行动。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 azure Devops 管道中部署 SQL 时遇到错误 的相关文章

随机推荐