mysql "ON DUPLICATE KEY UPDATE" 語法


ON DUPLICATE KEY UPDATE 語法並不是MySQL的標准語法,如果在句尾指定該語法,他會根據指定的主鍵或者唯一標示來更新數據庫的內容

具體的操作是想根據唯一標示查看數據庫是否存在該記錄,如果存在該記錄就更新,如果不存在就會插入一條新的記錄,

例子:

doorId是data_dev_door表中的唯一標識在表中如果doorId存在就會UPDATE如果不存在就會執行insert

注意: ON DUPLICATE KEY UPDATE 后必須存在是唯一標識:doorId 同時在語句后面也要加上要更新的字段 

<insert id="update">
INSERT INTO data_dev_door(
`DoorId`,
`ReaderNo`
) values
<foreach collection="list" item="item" index="index" separator="," >
(#{item.doorId},#{item.readerNo})
</foreach>
ON DUPLICATE KEY UPDATE doorId=VALUES(doorId),ReaderNo=VALUES(ReaderNo)
</insert>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM