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

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

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

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

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

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