文章詳情頁
MySQL主鍵沖突時的更新操作和替換操作在功能上有什么差別(如圖)
瀏覽:142日期:2022-06-11 15:47:52
問題描述
問題解答
回答1:INSERT ... ON DUPLICATE KEY UPDATE和REPLACE是有區(qū)別的,前者INSERT失敗后執(zhí)行UPDATE,后者相當(dāng)于DELETE再INSERT,原來整行都消失哦!
具體而言,如果你的表有3列的話:
id name alias1 王五 王二麻子
這兩句的效果是不一樣的:
INSERT INTO pri (id, name) VALUES (1, ’李四’) ON DUPLICATE KEY UPDATE name = ’李四’REPLACE INTO pri (id, name) VALUES (1, ’李四’)
前者alias沒變,后者卻會變成null。
回答2:insert into on duplicate update 是在原紀(jì)錄上進(jìn)行操作replace 判斷如果有重復(fù)的話,先進(jìn)行刪除操作,再進(jìn)行插入操作
相關(guān)文章:
1. 求救一下,用新版的phpstudy,數(shù)據(jù)庫過段時間會消失是什么情況?2. python沒入門,請教一個問題3. 小程序怎么加外鏈,語句怎么寫!求救新手,開文檔沒發(fā)現(xiàn)4. php如何獲取訪問者路由器的mac地址5. html - 爬蟲時出現(xiàn)“DNS lookup failed”,打開網(wǎng)頁卻沒問題,這是什么情況?6. html5 - input type=’file’ 上傳獲取的fileList對象怎么存儲于瀏覽器?7. 求教一個mysql建表分組索引問題8. node.js - 用nodejs 的node-xlsx模塊去讀取excel中的數(shù)據(jù),可是讀取出來的日期是數(shù)字,請問該如何讀取日期呢?9. javascript - vue-resource中如何設(shè)置全局的timeout?10. javascript - 在 vue里面用import引入js文件,結(jié)果為undefined
排行榜

熱門標(biāo)簽