MySQL replace into (insert into 的增强版)
生活随笔
收集整理的這篇文章主要介紹了
MySQL replace into (insert into 的增强版)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在使用SQL語句進行數據表插入insert操作時,如果表中定義了主鍵,插入具有相同主鍵的記錄會報錯:
?Error Code: 1062. Duplicate entry 'XXXXX' for key 'PRIMARY'(主鍵沖突)
這樣我們只好檢查主鍵是不是存在,若存在則更新,若不存在則插入。或者寫SQL流程控制語句(if...else...)
?
Mysql提供了replace into跟insert into的功能一樣。不同點在于:
如果發現表中已經有此行數據(根據主鍵或者唯一索引判斷)則先刪除此行數據,然后插入新的數據。否則,直接插入新數據。
注意:因為要根據主鍵或者是唯一索引判斷是否有重復數據,所以操作的表必須要有主鍵或者是唯一索引。否則的話,replace into?會直接插入數據。
?
Mysql replace into用法有三種,最簡單的一種用法就是直接將 "insert" 關鍵字替換為"replace"就可以啦。
insert into t(... , ...) values(... , ...)
修改為
replace into t(... , ...) values(... , ...)
總結
以上是生活随笔為你收集整理的MySQL replace into (insert into 的增强版)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 微型php框架 include/con
- 下一篇: arm-hisiv100nptl-lin