现有2条sql语句,需同时在一个execute(sqlA+sqlB)中执行
sqlA:update tableA where id=12 and state=2;
sqlB: insert into tableB(....) values(.....);
条件:
如果sqlA受影响的条数为0时(即当sqlA中的state=1 时
),sqlB不能执行
[code="java"]如果sqlA受影响的条数为0时(即当sqlA中的state=1 时
),sqlB不能执行 [/code]
带有业务处理的!应该有代码 和 事物完成!不应该交给数据库
用事物提交
使用exebatch 不行吗?为什么要在一个execute中写两个sql?
你别一起执行啊,分开执行,然后根据第一条update影响的行数来决定第二条是否执行,你也可以用merge into 来实现这个逻辑,都差不多,when matched then update when not matched then
insert