关注JEECG发展历程 关注最新动态和版本, 记录JEECG成长点滴 更新日志 - 技术支持 - 招聘英才

JEECG最新版本下载 JEECG智能开发平台 - 显著提高开发效率 常见问题 - 入门视频 - 参与开源团队

商务QQ: 69893005、418799587 商务热线(5*8小时): 010-64808099 官方邮箱: jeecgos@163.com

查看: 14040|回复: 1

[Minidao] minidao通过查询结果更新对应字段,查询结果总是固定值

[复制链接]
发表于 2018-4-20 15:09:12 | 显示全部楼层 |阅读模式
minidao代码如下:
@Arguments({"id","upleveno1"})
    @Sql("UPDATE test SET areano ="
            + "(SELECT  "
                + "CASE WHEN areano IS NULL THEN  "
                    + "CASE  WHEN upleveno=1 THEN '11' "
                           + "WHEN LENGTH(upleveno)=2 THEN CONCAT(upleveno,'01') "
                           + "WHEN LENGTH(upleveno)=4 THEN CONCAT(upleveno,'01') "
                           + "WHEN LENGTH(upleveno)=6 THEN CONCAT(upleveno,'001') "
                           + "WHEN LENGTH(upleveno)=9 THEN CONCAT(upleveno,'001') "
                    + "ELSE 'test' END "
                + "ELSE  areano END AS areano  "
            + "FROM (SELECT MAX(areano)+1 areano, :upleveno1 upleveno FROM test WHERE upleveno=:upleveno) AS tableq )"
    + " WHERE id=:id")
    Integer updatetestNum(int id,String upleveno1);

----------------------分割线---------------------------------
运行结果:


求大神帮忙找一下原因:
----------------------分割线------本人做了尝试------------------------------------------------------
minidao 如下:
@Arguments({"upleveno1"})
    @Sql("SELECT MAX(areano)+1 areano FROM test WHERE upleveno=:upleveno")
    Integer updateAreaNum1(String upleveno1);

调用如下:
logger.info("aaaa "+test.getId()+"   uplevelno:"+test.getUpleveno());
logger.info("ssssss  :"+updateAreaNum1(test.getUpleveno()));

运行结果如下:
aaaa 12207   uplevelno:1
ssssss  :null

求大神指点。。。在线等。。。。




发表于 2018-4-20 15:21:23 | 显示全部楼层
参数传进去了吗?
写的问题吧,参数名不一样
TIM图片20180420152149.png
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表