已更新或删除的行值要么不能使该行成为唯一行,要么改变了多个行,多个
在对一个表做试验的时候,往里面添加了几条数据,后来发现原本想作为主键的字段的值都为"NULL",这可不行,删除重新来吧。选中删除的时候就出现了 “已更改或删除的行值要么不能使改行成为唯一行,要么改变了多个行(X行)”的错误。
原来是建表的时候忘了添加主键,但是现在删除也删除不了,往里面填东西吧,也填不了,也报错。没有办法啊~百度吧~各种解决办法,终于找到了我这个菜鸟能看懂而且操作出来的方法。(好方法!!!)
解决方法:
单击SQL工具栏上的“新建查询”按钮,然后登陆要修改的数据表所在的数据库,然后输入以下SQL语句 delete 数据库名.表名 where 要删除的字段名=‘字段值’
例如:
use jifang --转到jifang数据库 go
delete jifang.dbo.weihubiao where 卡号='NULL'</span>然后按F5执行就可以了。 虽然是自己粗心大意犯下的错误,但是从这个错误中学到了东西,感觉这个错误犯的还是值得的。出现错误了就是要进步了~加油!!!
这种问题大多是由于没有主键(PK)导致同一张表中存在若干条相同的数据。DBMS存储时,只为其存储一条数据,因为DBMS底层做了优化,以减少数据冗余。所以删除或更新一条重复数据就牵一发而动全身。
明白了根本原因,那么解决问题就轻而易举了,推荐设置主键,检查是否存在相同行数据。
在表中加个主键吧。
本站文章为和通数据库网友分享或者投稿,欢迎任何形式的转载,但请务必注明出处.
同时文章内容如有侵犯了您的权益,请联系QQ:970679559,我们会在尽快处理。