Sql 是否可以在MyBatis语句中将算术运算符作为变量传递?

Sql 是否可以在MyBatis语句中将算术运算符作为变量传递?,sql,mybatis,Sql,Mybatis,我想将MyBatis update语句中的+,-等算术运算符作为参数传递,并像这样使用它 更新产品 设定价格=价格+1 除了+运算符在我的例子中应该是一个变量之外你可以使用动态语句 假设你的界面是 interface myproducts{ updateProduct(@Param("opr") boolean operation); } 您的mybatis SQL语句如下所示 <update id="updateProduct"> <set>

我想将MyBatis update语句中的+,-等算术运算符作为参数传递,并像这样使用它 更新产品 设定价格=价格+1


除了+运算符在我的例子中应该是一个变量之外

你可以使用动态语句

假设你的界面是

interface myproducts{
   updateProduct(@Param("opr") boolean  operation);
}
您的mybatis SQL语句如下所示

<update id="updateProduct">
  <set>
            <if test="1 == opr">
                Price = Price + 1
            </if>
            <if test="0 == opr">
                Price = Price - 1
            </if>
        </set>
</update

你能详细说明一下吗。现在还不清楚你到底在问什么。你要找的样本会有帮助。我想把MyBatis update语句中的+,-等算术运算符作为参数传递,并像update Products SET Price=Price+1一样使用它;除了+运算符在我的情况下应该是一个变量,谢谢你的建议。但我已经知道这条路了。我想知道是否可以将运算符作为参数传递。我想,如果它都有可能受到sql注入的攻击,我就不可能了