久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

完美解決Thinkphp3.2中插入相同數據的問題

下面小編就為大家帶來一篇完美解決Thinkphp3.2中插入相同數據的問題。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

問題描述

今天在使用TP3.2插入數據的時候,為了避免插入相同的數據(所謂相同的數據,其主鍵相同或者是唯一索引的字段相同),我創建的索引如下圖,主鍵索引為自增字段,不可能出現重復,即唯一索引可能會出現重復,我希望的是uid,year,mounth,day 這三個字段出現相同的話,就更新當前記錄。

完美解決Thinkphp3.2中插入相同數據的問題

問題解決辦法

在之前面對這樣的問題的時候,我們知道,MySQL提供了ON DUPLICATE KEY UPDATE或者REPLACE INTO來解決。

使用ON DUPLICATE KEY UPDATE

插入數據之前,表中就一條記錄,如下圖

完美解決Thinkphp3.2中插入相同數據的問題

SQL語句如下,當插入記錄時候,與表中已有記錄相同,則更新改條記錄,否則插入記錄。

INSERT INTO `work_log` (
`uid`,
`year`,
`mounth`,
`day`,
`status`
) 
VALUES
(1, 2016, 6, 3, 1) 
ON DUPLICATE KEY 
UPDATE 
`status` = 
VALUES
(`status`),
`updated_ts` = NOW();

完美解決Thinkphp3.2中插入相同數據的問題

使用REPLACE INTO

代碼如下:

先執行如下代碼插入一條數據

REPLACE INTO `work_log` (
`uid`,
`year`,
`mounth`,
`day`,
`status`
) 
VALUES
(1, 2016, 6, 2, 1)

效果如下圖

完美解決Thinkphp3.2中插入相同數據的問題

再次執行如下代碼,就會更新上面插入的代碼

REPLACE INTO `work_log` (
`uid`,
`year`,
`mounth`,
`day`,
`status`
) 
VALUES
(1, 2016, 6, 2, 5)

效果如下圖

完美解決Thinkphp3.2中插入相同數據的問題

ON DUPLICATE KEY UPDATE與REPLACE INTO區別

當出現相同的值時候,ON DUPLICATE KEY UPDATE是更新已經存在的記錄,REPLACE INTO是刪除之前的記錄,然后插入新的記錄。

Thinkphp3.2中解決辦法

在Thinkphp3.2中,通過add()函數的第三個參數來處理插入相同數據的問題。

Model.class.PHP中add()方法,調用了Db.class.php中insert中方法,在insert方法中,我們可以看到有如下代碼:

完美解決Thinkphp3.2中插入相同數據的問題

其中$replace 正好是add方法中第三個參數。

以上這篇完美解決Thinkphp3.2中插入相同數據的問題就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持。

【網站聲明】本站除付費源碼經過測試外,其他素材未做測試,不保證完整性,網站上部分源碼僅限學習交流,請勿用于商業用途。如損害你的權益請聯系客服QQ:2655101040 給予處理,謝謝支持。

相關文檔推薦

主站蜘蛛池模板: 亚洲狠狠爱| 精品国产鲁一鲁一区二区张丽 | 亚洲国产精品一区在线观看 | 日韩不卡一区二区 | 午夜天堂精品久久久久 | 国产一区视频在线 | 日韩免费成人av | 97视频在线观看免费 | av片在线免费看 | 毛片一区二区三区 | 久久99深爱久久99精品 | 狠狠色狠狠色综合系列 | 观看av| 亚洲网站在线观看 | 粉嫩av久久一区二区三区 | 91精品国模一区二区三区 | 久久亚洲一区二区三区四区 | 国产视频中文字幕 | 狠狠婷婷综合久久久久久妖精 | 久久99精品久久久 | 一区二区三区在线 | 一区二区三区在线看 | 亚洲国产欧美日韩 | 久久av网| 亚洲第一区国产精品 | 日韩精品一区二区三区在线观看 | 久久久久成人精品 | 欧美日日日日bbbbb视频 | 视频一区在线观看 | 国产精品国色综合久久 | 亚洲精品久久久一区二区三区 | 高清国产午夜精品久久久久久 | 国产乱码精品一区二三赶尸艳谈 | 大乳boobs巨大吃奶挤奶 | 精品国产欧美一区二区三区成人 | 日韩综合一区 | 精品免费在线 | 欧美精品网| 一区二区三区免费网站 | 男女深夜网站 | 成人在线中文字幕 |