日期:2014-05-16  浏览次数:20408 次

地球人注意了,键列信息不足或不正确,更新会影响到多行

在对sql server的表操作时经常会遇到“键列信息不足或不正确,更新影响到多行”这样的错误,搞了半天,查了半天,这一天时间就快没了,网上还各种奇葩的说法,我终于发现,现在很多东西都不是自己想要的,但它总是出现在我面前,迷惑我,阻碍我,想要烦死我吗?我去,就知道年轻人性子急。当你遇到这个问题,当你在网上各种搜,各种尝试,各种无奈之后,看到我这篇文章,你可能感动不已,泪眼盈眶,突然又有了活下去的勇气,告诉自己:地球人依旧坚强!

这个有点夸张,但我找到真正的答案的时候差不多也这样,你知道这是因为表里面有了重复的记录,不管怎么右击-删除都无效,火星人依然不出现,得了吧,不要再期待了,这也许是考验自己的时候到了,也许成功就在彼岸,只要在查询分析器里面执行(F5)下面这条语句,就一切搞定,重复记录从此不再困扰您,还包邮哦

delete 表名 where 重复字段名 in (select 重复字段名 from 表名 group by 重复字段名 having count(*)>1)

这个,网上很多答案都说要添加主关键字就行,我添加的时候,结果保存不了,可能也是因为记录重复的原因,就这里把我气的,添加主关键字是为了防止记录重复,而我的这个问题已经发生了,我首先需要的是解决办法,所以电视机前想先解决这个问题的,那就先执行上面这条语句,然后打个预防针,添加主关键字就行,主关键字添加的方法是:

1.打开数据库

2.右击那个没有重复记录的表

3.选择设计表

4.右击其中一行

5.选择设为主键

6.点击保存按钮

7.大功告成

8.准备登陆月球

7楼asd199201264天前 19:04
嘿嘿
6楼u0107536135天前 22:03
哈哈,如果遇到这个问题,看到你的问题不仅问题解决了,而且还放松了之前各种无奈和郁闷!
Re: asd199201264天前 17:48
回复u010753613n嘿嘿
5楼zhang_xinxiu5天前 17:52
没有设置主键……
4楼u0107736675天前 14:28
标题很有号召力啊
3楼ZHOUCHAOQIANG5天前 10:31
我当初遇到的时候是空间设置的少了,呵呵!
2楼lfmilaoshi5天前 10:31
发现了问题,你就是进步了。
1楼zs159326164536天前 21:21
解决问题很重要,思考原因更重要!加油!