加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql-server – 由于数据丢失可能发生,模式更新正在终止

发布时间:2020-12-12 16:28:56 所属栏目:MsSql教程 来源:网络整理
导读:我不断碰到这个错误,这通常是由于在Lightswitch中构建应用程序时所犯的一些错误造成的.它通常与关系相关联.在我发布应用程序并看到错误之前,我通过移动并完成了许多工作.在这个时候,很难计算我做错了什么.有没有办法跟踪这个错误,看看我需要在表中更改? Net
我不断碰到这个错误,这通常是由于在Lightswitch中构建应用程序时所犯的一些错误造成的.它通常与关系相关联.在我发布应用程序并看到错误之前,我通过移动并完成了许多工作.在这个时候,很难计算我做错了什么.有没有办法跟踪这个错误,看看我需要在表中更改?

Net SqlClient Data Provider: Msg 50000,Level 16,State 127,Line 6
Rows were detected. The schema update is terminating because data loss
might occur.

谢谢.

解决方法

当您对实体的属性(在表设计器中)进行的更改将导致发布数据库中的实体表被删除并发生时,会发生此错误.重新创建,表中有数据.这只是SQL Server的工作方式,它不在LightSwitch的控制之下.然而,LightSwitch在谨慎的一面犯错,不允许可能导致任何数据潜在丢失的操作.

可能触发此类事物的类型有:

>重命名属性
>将其从需要更改为不需要等
>更改属性的数据类型
>&甚至(如果我记得正确的话)改变一个位置
属性列表中的属性

但是,您可以将属性添加到属性列表的末尾,而不会触发表被删除&重建.

在尝试发布应用程序之前进行太多更改真的不是一个好主意,因为您建议的原因 – 最终不知道您做了什么.特别要在对实体的属性进行任何更改后发布.即使您刚刚发布到开发机器上的本地SQL Server实例(包括SQL Express),也可以在发布到生产服务器之前“测试”更改.

我已经解决了这个问题(当我习惯于使用LS的内在数据时,ApplicationData – 我现在使用附加的数据源)是手动使数据库本身的列更改,使用像SSMS(SQL服务器管理Studio).然后,您可以决定允许(潜在的)数据丢失.小心,但你改变了,&确保它与LightSwitch中属性的更改完全相同.当然,请在对数据库进行任何更改之前备份.如果导致数据库与LightSwitch不同步,您将遇到重大问题.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读