亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

SQL Duplicate entry for key ‘PRIMARY‘主鍵重復(fù)報(bào)錯(cuò)解決

 更新時(shí)間:2024年11月05日 10:37:59   作者:素人依偎  
解決SQL主鍵重復(fù)報(bào)錯(cuò)的幾種方法包括使用INSERT IGNORE、REPLACE INTO、ON DUPLICATE KEY UPDATE等,本文就來介紹一下問題解決,感興趣的可以了解一下

錯(cuò)誤原因

報(bào)錯(cuò)信息“Duplicate entry '1234' for key 'USER_INFO.PRIMARY'”,嘗試插入一條數(shù)據(jù)時(shí),主鍵值ID=1234,已經(jīng)存在于表USER_INFO中。因?yàn)殒I(Primary Key)是表中的唯一標(biāo)識(shí)符,每個(gè)記錄必須有一個(gè)唯一的主鍵值,所以報(bào)錯(cuò)

例:

ID(主鍵)USER_NAMEADDRESS
1234小紅武漢
5678小白長(zhǎng)沙

執(zhí)行如下插入sql后預(yù)期報(bào)錯(cuò)

 INSERT INTO USER_INFO (ID, USER_NAME, ADDRESS)  VALUES (1234, '小紅', '武漢');

解決方案

1. INSERT IGNORE:忽略重復(fù)的插入操作,插入無效

機(jī)制:遇到主鍵沖突不進(jìn)行任何操作

示例預(yù)期

INSERT IGNORE USER_INFO (ID, USER_NAME, ADDRESS)  VALUES (1234, '小紅', '武漢');

ID(主鍵)USER_NAMEADDRESS
1234小紅武漢
5678小白長(zhǎng)沙

2.REPLACE INTO:可以在主鍵沖突時(shí)替換現(xiàn)有記錄

機(jī)制:先嘗試插入數(shù)據(jù),如果發(fā)現(xiàn)主鍵沖突(或唯一索引沖突),則刪除沖突的現(xiàn)有行,然后插入新行

示例預(yù)期

REPLACE INTO  USER_INFO (ID, USER_NAME, ADDRESS)  VALUES (1234, '小綠', '北京');

ID(主鍵)USER_NAMEADDRESS
1234小綠北京
5678小白長(zhǎng)沙

3. ON DUPLICATE KEY UPDATE:可以在主鍵沖突時(shí)更新現(xiàn)有記錄

機(jī)制:先嘗試插入數(shù)據(jù),如果發(fā)現(xiàn)主鍵沖突(或唯一索引沖突),則執(zhí)行update 操作,而不是刪除和重新插入(設(shè)想場(chǎng)景:批量導(dǎo)入數(shù)據(jù),如果表格中已存在主鍵相同信息,則以表格中信息為準(zhǔn),然后更新表格中的一個(gè)標(biāo)識(shí)等)

INSERT INTO USER_INFO (ID, USER_NAME, ADDRESS)  VALUES (1234, '小紅', '武漢') 

ON DUPLICATE KEY UPDATE USER_NAME = '小綠' 

示例預(yù)期

ID(主鍵)USER_NAMEADDRESS
1234小綠武漢
5678小白長(zhǎng)沙

4.避免重復(fù)插入、調(diào)整表結(jié)構(gòu)

到此這篇關(guān)于SQL Duplicate entry for key ‘PRIMARY‘主鍵重復(fù)報(bào)錯(cuò)解決的文章就介紹到這了,更多相關(guān)SQL 主鍵重復(fù)報(bào)錯(cuò)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論