【问题标题】:Rows were detected. The schema update is terminating because data loss might occur检测到行。架构更新正在终止,因为可能会发生数据丢失
【发布时间】:2018-02-21 04:56:12
【问题描述】:

我正在开发一个 Web 应用程序,当然在每个阶段我都需要更改测试服务器上的数据库架构。当我尝试将我的代码发布到我的 azure 应用服务时,它显示了一个错误:

错误:.Net SqlClient 数据提供者:消息 50000,级别 16,状态 127, 检测到第 6 行行。架构更新正在终止,因为 可能会发生数据丢失

我明白了,它想删除一些列,当然应该删除一些列。 我的问题是,我怎么能告诉它仍然删除列?!

更新

我已经从影响表中删除了所有行,并且发布完成了。但是应该有一种方法可以让我保留我的数据并删除该列。

另外,生产上的解决方案是什么?

更新 2

我发现this post in msdn 提到:您可以取消选中数据 | 下的“如果可能发生数据丢失,阻止更新”选项。架构比较 |架构比较选项。

但我想只有当你有一个数据库项目时才会出现这种情况。如何先在代码上做?

【问题讨论】:

    标签: c# azure ef-code-first entity-framework-6 azure-web-app-service


    【解决方案1】:

    考虑将部署脚本添加到您的项目中。这允许您使用 T-SQL 执行在发布时由于数据完整性原因而被阻止的操作。我不确定这是否适用于您正在执行的特定类型的项目,但我过去曾使用它们对数据库项目进行阻止的架构更改。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-08-22
      • 2012-11-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-08-01
      • 2019-10-22
      相关资源
      最近更新 更多