亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

搜索
博主信息
博文 1
粉絲 0
評(píng)論 0
訪問量 150
最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板
insert時(shí),如何避免重復(fù)注冊(cè)?
P粉417955368
原創(chuàng)
150人瀏覽過

今天遇到一個(gè)問題:通過sql語句直接實(shí)現(xiàn)重復(fù)數(shù)據(jù)不插入,而不用借助邏輯代碼進(jìn)行判斷。

通過查詢目前有三種方法可以實(shí)現(xiàn)。

一、insert ignore into

前提條件:插入的屬性列中包含主鍵或者唯一索引。

用法:和insert into用法一致,插入時(shí)需要指定屬性列,否則默認(rèn)全部屬性列值。當(dāng)根據(jù)主鍵或唯一索引判定重復(fù)時(shí),直接忽略該條數(shù)據(jù),執(zhí)行下一條。

例子: 給表設(shè)置了主鍵和唯一索引(id:主鍵, serial: 設(shè)置了唯一索引)

代碼解讀復(fù)制代碼主鍵重復(fù)

因?yàn)镮D為6的數(shù)據(jù)已存在,所以受影響行數(shù)為0,也就意味著不插入。

代碼解讀復(fù)制代碼唯一索引重復(fù)

插入了兩天serial一樣的數(shù)據(jù)信息,可以看到受影響行數(shù)為1,也就是說在在插入第二條數(shù)據(jù)的時(shí)候重復(fù)直接忽視。

二、replace into

前提條件:插入的屬性列中包含主鍵或者唯一索引。

用法:和insert into用法一致,插入時(shí)需要指定屬性列,否則默認(rèn)全部屬性列值。當(dāng)表中存在重復(fù)數(shù)據(jù),則先刪除此行數(shù)據(jù),然后插入新的數(shù)據(jù),相當(dāng)于 delete + insert

例子:

主鍵重復(fù)

replace into sensor_core(id, range_type, type, serial, name, model) VALUES(10, "LLP","芯體12","40110992","陶瓷壓力傳感器芯體","CPS1184-5bar")

ID重復(fù),修改了type屬性列的數(shù)據(jù),執(zhí)行之后再次查看數(shù)據(jù)庫中的數(shù)據(jù),發(fā)現(xiàn)數(shù)據(jù)已變更。

唯一索引重復(fù)

replace into sensor_core(id, range_type, type, serial, name, model) VALUES(10, "LLP","芯體","40110992","陶瓷壓力傳感器芯體","CPS1184-5bar")

ID不同,serial相同,執(zhí)行sql之后,再次查看數(shù)據(jù)庫中的數(shù)據(jù),發(fā)現(xiàn)ID已變更。

三、insert into ... on duplicate key update...

前提條件:插入的屬性列中包含主鍵或者唯一索引。

用法:該數(shù)據(jù)庫可以以on duplicate key為界限,分為兩部分來看。當(dāng)數(shù)據(jù)重復(fù)時(shí),執(zhí)行后面的update部分,當(dāng)數(shù)據(jù)不存在時(shí),執(zhí)行insert.

本博文版權(quán)歸博主所有,轉(zhuǎn)載請(qǐng)注明地址!如有侵權(quán)、違法,請(qǐng)聯(lián)系admin@php.cn舉報(bào)處理!
全部評(píng)論 文明上網(wǎng)理性發(fā)言,請(qǐng)遵守新聞評(píng)論服務(wù)協(xié)議
0條評(píng)論
作者最新博文
關(guān)于我們 免責(zé)申明 意見反饋 講師合作 廣告合作 最新更新
php中文網(wǎng):公益在線php培訓(xùn),幫助PHP學(xué)習(xí)者快速成長!
關(guān)注服務(wù)號(hào) 技術(shù)交流群
PHP中文網(wǎng)訂閱號(hào)
每天精選資源文章推送
PHP中文網(wǎng)APP
隨時(shí)隨地碎片化學(xué)習(xí)
PHP中文網(wǎng)抖音號(hào)
發(fā)現(xiàn)有趣的

Copyright 2014-2025 http://ipnx.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號(hào)

  • 登錄PHP中文網(wǎng),和優(yōu)秀的人一起學(xué)習(xí)!
    全站2000+教程免費(fèi)學(xué)