mybatis如何执行多句原生语句

在对数据库进行操作的时候要进行锁表,更新表的字段值,查询后返回,最后解锁表。不用jdbc进行
执行的sql语句如下:

LOCK TABLE yh WRITE;
UPDATE yh SET value = value + 1;
SELECT value FROM yh;
UNLOCK TABLES;
阅读 3.5k
1 个回答

1,如果程序不存在分布式,那在程序层面,直接加锁,做成单线程,不需要做数据库表锁。
2,如果程序是分布式,可以放在缓存里(redis等),然后对存取缓存的方法加锁。定时对缓存的数据同步到数据库即可。
3,如果非要在mybatis里面做,建议分两部分语句进行调用。

a:select value from yh for update;
b:update yh set value = value + 1;
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题