我正在运行最新的SQL更改自动化vsts插件。我添加了一个新的迁移脚本,执行以下
ALTER my_table ADD [description] varchar(max) NULL
当发布被部署时,我得到了以下错误
System.Management.Automation.CmdletInvocationException: An unhandled error occurred: RedGate.Versioning.Engine.Api.Exceptions.FileException: Drift analysis: These changes will NOT be applied because DriftOptionBlockDataLoss=True (see 'C:WINDOWSTEMPDLM Automation5dyfpy0w.aryartifactsSQL.Database.Migration_Database_DriftSyncScript.sql' for details). Changes have been detected that could result in data loss for the following table object(s): [dbo].[my_table].
我知道如何使用MSBuild方式禁用DriftOptionBlockDataLoss,但不在vsts发布插件中。
这里还有一个问题,为什么添加null列会引发数据丢失错误?我只是添加一个空列
感谢大家提供的帮助。
请参阅第4节"漂移报告和漂移校正脚本",其中配置了DriftOptionBlockDataLoss
、DriftOptionDropMissingObjects
和DBReSyncOnBuild
参数。
相关线程:Readyroll:使用VSTS构建时出错:漂移分析:这些更改将不会应用,因为DriftOptionBlockDataLoss=True