最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

解決MySQL讀寫分離導(dǎo)致insert后select不到數(shù)據(jù)的問題

 更新時(shí)間:2020年12月01日 15:20:08   作者:阿布QAQ~  
這篇文章主要介紹了解決MySQL讀寫分離導(dǎo)致insert后select不到數(shù)據(jù)的問題,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧

MySQL設(shè)置獨(dú)寫分離,在代碼中按照如下寫法,可能會(huì)出現(xiàn)問題

// 先錄入
this.insert(obj); 
// 再查詢
Object res = this.selectById(obj.getId());
res: null;

線上的一個(gè)坑,做了讀寫分離以后,有一個(gè)場景因?yàn)橄敕椒◤?fù)用,只傳入一個(gè)ID就好,直接去庫里查出一個(gè)對象再做后續(xù)處理,結(jié)果查不出來,事務(wù)隔離級(jí)別各種也都排查了,最后發(fā)現(xiàn)是讀寫分離的問題,所以換個(gè)思路去實(shí)現(xiàn)吧。

補(bǔ)充知識(shí):MySQL INSERT插入條件判斷:如果不存在則插入

我們經(jīng)常需要進(jìn)行sql的批量插入,要求:該條記錄不存在則插入,存在則不插入。如果使用一條INSERT語句實(shí)現(xiàn)呢?

對于普通的 INSERT 插入,如果想要保證不插入重復(fù)記錄,我們只有對某個(gè)字段創(chuàng)建唯一約束實(shí)現(xiàn);

那有沒有不創(chuàng)建唯一約束,僅通過 INSERT INTO 一條語句實(shí)現(xiàn)的方案呢?

答:使用 INSERT INTO IF EXISTS, 具體語法如下

INSERT INTO table(field1, field2, fieldn) 
SELECT 'field1', 'field2', 'fieldn' 
FROM DUAL
WHERE NOT EXISTS(SELECT field FROM table WHERE field = ?)

例:

INSERT INTO a (order_id, operator, oper_date, memo) 
SELECT '3', 'onion3', '2017-11-28', '測試3' 
from DUAL 
where not exists(select order_id from a where operator='onion3' and memo = '測試3'); 

以上這篇解決MySQL讀寫分離導(dǎo)致insert后select不到數(shù)據(jù)的問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論

济源市| 油尖旺区| 任丘市| 四平市| 中卫市| 利川市| 昌乐县| 乌拉特后旗| 虞城县| 宜城市| 宜兰县| 大化| 成都市| 惠水县| 抚远县| 武穴市| 离岛区| 大渡口区| 仪征市| 弋阳县| 兴仁县| 时尚| 南投县| 民和| 清水河县| 德惠市| 云和县| 德庆县| 柘荣县| 盘山县| 鹤岗市| 信丰县| 含山县| 上饶县| 峨山| 灵武市| 雷州市| 东丰县| 广南县| 襄樊市| 定兴县|