#事故現場:
1、在手動修改某表中數據是,出現如下錯誤提示:
已更新或刪除的行值要么不能使該行成為唯一行,要么改變了多個行
2、表結構及數據:
#解決方法:
1、原因分析:提示被刪除的行不是唯一行,檢查發現:
表中出現了重復的數據({name:小紅,age:10}),所以當視圖刪除時,會提示錯誤;
2、解決方法一:添加中間,使行值成為唯一值;
sql語句:
ALTER TABLE UserInfo add ID int identity primary key
效果:
3、解決方法二:先將原用的表做個備份,根據條件將滿足條件的數據導到新的表來,再將原表清除,最后將備份表中的數據select過來即可;
1)、在備份表中導入需要的數據
INSERT INTO UserInfo_backup select distinct name,age from UserInfo
2)、清除原表中的數據;
delete from UserInfo
3)、從備份表中導入數據;
INSERT INTO UserInfo select name,age from UserInfo_backup
4、解決方法三:直接刪除出現重復的數據;(具體看情況而定)
delete from UserInfo where name='小紅' and age=10
——————————————————————————————————————————————————————