ibatis 执行多条sql问题

我们用ibatis框架,每次调用数据库都是通过dao层调用sqlmap配置文件,来获取结果。现在有个业务流程就是获取流水号,获取时候要从数据库读取流水号id,然后紧接着把... 我们用ibatis 框架,每次调用数据库都是通过dao层调用sqlmap配置文件,来获取结果。现在有个业务流程就是获取流水号,获取时候要从数据库读取流水号id,然后紧接着把这个值再加1,以保证每次拿到的都是不同的id号。两条sql分别为:
select seqno from table where .. for update ;
update table set seqno = seqno+1
问题就是,sqlmap配置文件中,每次仅能执行一条sql语句,上面2条sql无法一起执行。
要么就是从dao层分两次调用,但是上面两条sql一定要保证数据库的sessionid一致,我就怕出现第一次调用完查询,等第二次调用时候sesssion就变了,这样就会死锁谁都无法读取了。这种问题该怎么解决?
展开
 我来答
斋如风0I5
2015-01-22 · TA获得超过598个赞
知道小有建树答主
回答量:453
采纳率:100%
帮助的人:271万
展开全部
楼上说的对,先update后select ,但是ibatis中<select></select>之间不能嵌套update语句,因此你只能分两次调用了 但是可以使用批处理
nelsontu_bd
2015-01-20 · TA获得超过557个赞
知道小有建树答主
回答量:484
采纳率:0%
帮助的人:275万
展开全部
先update,再select,可以用批处理操作
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式