Mysql插入數據主鍵重復時怎么搞?


如果插入數據主鍵重復或數據已經存在,顯然需要更新這條數據

一、大家在做數據庫相關操作的時候,應該經常會遇到當一條數據不存在的時候,插入這條數據。但是如果這條數據的主鍵已經在,並且數據已經填充好時,那么怎么才能更新這條數據呢?xiao

  可能大部分人第一時間想到是先插入,然后判斷主鍵是否存在,不存在就插入,存在就執行

更新語句,這種做法是最容易想到的,也算對,但是弊端很大,首先你需要寫兩條sql語句,這樣

的話就需要兩次連接數據庫服務器,然后利用高級語言來判斷是否存在的邏輯。顯然效率很低!那么

有什么一勞永逸的好方法呢?

下面教你一條SQL語句,教你解決這類問題!

sql = "insert into douyin (user_name,user_id,profile,prasied_number,focus_number,fans_number,avatar,work_image) values (%s,%s,%s,%s,%s,%s,%s,%s)

    ON DUPLICATE KEY UPDATE user_name='$user_name',profile='$profile',prasied_number='$prasied_number',focus_number='$focus_number',fans_number='$fams_number',avatar='$avatar',work_image='$work_image'"

ON DUPLICATE KEY UPDATE(當出現DUPLICATE KEY主鍵重復錯誤的時候觸發Update操作,當然要求就是表在設計的時候一定要有主鍵primary key)


免責聲明!

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



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