在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問(wèn)答/Java  數(shù)據(jù)庫(kù)/ mybatis如何執(zhí)行多句原生語(yǔ)句

mybatis如何執(zhí)行多句原生語(yǔ)句

在對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作的時(shí)候要進(jìn)行鎖表,更新表的字段值,查詢后返回,最后解鎖表。不用jdbc進(jìn)行
執(zhí)行的sql語(yǔ)句如下:

LOCK TABLE yh WRITE;
UPDATE yh SET value = value + 1;
SELECT value FROM yh;
UNLOCK TABLES;
回答
編輯回答
愚念

1,如果程序不存在分布式,那在程序?qū)用妫苯蛹渔i,做成單線程,不需要做數(shù)據(jù)庫(kù)表鎖。
2,如果程序是分布式,可以放在緩存里(redis等),然后對(duì)存取緩存的方法加鎖。定時(shí)對(duì)緩存的數(shù)據(jù)同步到數(shù)據(jù)庫(kù)即可。
3,如果非要在mybatis里面做,建議分兩部分語(yǔ)句進(jìn)行調(diào)用。

a:select value from yh for update;
b:update yh set value = value + 1;
2017年12月7日 15:49