1.使用前提
必须要在数据源上加上 allowMultiQueries=true,否则sql异常
2.注意事项
mysql中定义@变量是set
SET @c = '2333';-- 定义变量并赋值
SELECT @c;-- 查询定义的变量的值
但是在Mybatis中定义变量时这样:
<update id="updatePrice">
/*1.变量定义*/
select @isEnd:=0,@isFinish:=1;
/*2.使用变量*/
update Sc_Stock a set a.cost_price = 10 where @isFinish= 1 and @isEnd = 0;
</update>
对用户变量赋值有两种方式,一种是直接用"=“号,另一种是用”:=“号。其区别在于使用set命令对用户变量进行赋值时,两种方式都可以使用;当使用select语句对用户变量进行赋值时,只能使用”:=“方式,因为在select语句中,”="号被看作是比较操作符。
需要注意定义变量是" := "。