Atitit mybatis分支选择以及与sql变量交互问题
Atitit mybatis分支选择以及与sql变量交互问题
Mybatis的一个mapper文件 工单表.xml
有个select内容如下
<select id="隐患事件流程" parameterType="Map" resultType="Map">
insert 工单表(#{工单信息});
set @当前工单id = LAST_INSERT_ID();
insert 操作日志(#{操作员}, #{事件});
select 是否自动派单, 维保公司 into @是否自动派单, @维保公司 from 物业配置表 limit 1;
/* select @是否自动派单n,@维保公司; */
if (@是否自动派单)
update 工单表 set 维保公司=@维保公司 where id = @当前工单id
end if;
</select>
但是这个有个问题,,if语句报错。。拿到存储过程里面是可以的,单独写sql在navicate查询也是不能使用if语句的,怀疑是Mysql的bug。。。
那么只好使用mybatis的if标签来试试了,,但是貌似需要绑定sql变量到mybbatis变量。。如何绑定???我需要获取 sql 变量@是否自动派单n,@维保公司,或者上一条sql返回字段值也可,根据这个来判断
bind标签的两个属性都是不选项,name为绑定到上下文的变量名,value为OGNL表达式,
bind 元素可以从 OGNL 表达式中创建一个变量并将其绑定到上下文。比如:
有谁知道如何使用if标签来写这个判断吗??