博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【sql server】"已更新或删除的行值要么不能使该行成为唯一行,要么改变了多个行" 解决方案...
阅读量:5166 次
发布时间:2019-06-13

本文共 694 字,大约阅读时间需要 2 分钟。

#事故现场:

1、在手动修改某表中数据是,出现如下错误提示:

 已更新或删除的行值要么不能使该行成为唯一行,要么改变了多个行

2、表结构及数据:

#解决方法:

1、原因分析:提示被删除的行不是唯一行,检查发现:

  表中出现了重复的数据({name:小红,age:10}),所以当视图删除时,会提示错误;

2、解决方法一:添加中间,使行值成为唯一值;

  sql语句:

ALTER TABLE UserInfoadd ID int identity primary key

  效果:

3、解决方法二:先将原用的表做个备份,根据条件将满足条件的数据导到新的表来,再将原表清除,最后将备份表中的数据select过来即可;

  1)、在备份表中导入需要的数据

INSERT INTO UserInfo_backupselect distinct name,age from UserInfo

 

   2)、清除原表中的数据;

delete from  UserInfo

 

   3)、从备份表中导入数据;

INSERT INTO UserInfoselect name,age from UserInfo_backup

 

 4、解决方法三:直接删除出现重复的数据;(具体看情况而定)

delete from  UserInfo where name='小红' and age=10

 

 

——————————————————————————————————————————————————————

转载于:https://www.cnblogs.com/willingtolove/p/10798210.html

你可能感兴趣的文章
Sturct类型装箱时会遇到的问题
查看>>
mybatis 在自动生成时设置不生成Example类
查看>>
如何将红色区域数据调用解密函数直接打印到输出控制台(例如:crt控制台)...
查看>>
React-AR概述
查看>>
踏上Salesforce的学习之路(一)
查看>>
json中拿到想拿的值
查看>>
ios开发抽屉效果的封装使用
查看>>
C#使用Log4Net记录日志
查看>>
从struts2源码学到的技巧
查看>>
xcode如何运行下载的demo工程
查看>>
JavaScript Date 日期操作
查看>>
优秀程序员不得不知道的20个位运算技巧
查看>>
70:Climbing Stairs【DP】
查看>>
jquery实现全选、反选、不选
查看>>
logback配置
查看>>
ECMA5中定义的对象属性特性和方法
查看>>
2、zabbix工作原理及安装配置
查看>>
2、Docker基础用法
查看>>
PostgreSQL 自增主键
查看>>
加快linux ssh登录的方法
查看>>