前言
最近因?yàn)楣ぷ鞯脑?,在做APP購(gòu)物車下單支付這一塊兒.被測(cè)試提了一個(gè)bug,當(dāng)點(diǎn)加入購(gòu)物車點(diǎn)的比較快的時(shí)候,同一個(gè)商品在購(gòu)物車中出現(xiàn)了兩個(gè).
因?yàn)榧尤胭?gòu)物車的時(shí)候,分2步, 第1步是先判斷要加入購(gòu)物車的商品是不是已經(jīng)在購(gòu)物車當(dāng)中了,如果在的話就在原來(lái)的數(shù)量基礎(chǔ)上做加一操作.如果不在再插件.
因?yàn)閮刹讲皇窃拥牟僮?所以就出現(xiàn)了多線程的安全問(wèn)題,下面話不多說(shuō)了,來(lái)跟隨小編一起來(lái)看看詳細(xì)的解決過(guò)程吧,會(huì)對(duì)你有一定的幫助的。
MySQL insert有一個(gè)比較高級(jí)的操作
示例代碼:
INSERT INTO t_xs_shopping_cart ( user_id, shop_id, commodity_id, quantity ) VALUES (71, 67, 140201057403511024, 1) ON DUPLICATE KEY UPDATE quantity = quantity + 1
當(dāng)唯一鍵約束起作用的時(shí)候,會(huì)走update語(yǔ)句,把數(shù)量加1
總結(jié)
聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com