qq_22948413 2015-08-19 03:33 采纳率: 44.4%
浏览 8835
已采纳

Mybatis批量添加:报错信息:ORA-00933: SQL 命令未正确结束

Mybatis里面:

  insert into USER_ROLE_AUT
    (RU_ID, RU_ROLE_ID, RU_AUT_ID, RU_TIME_INS, RU_USER_INS, RU_TIME_LST, RU_USER_LST, RU_STATUS) 
        select U.* from USER_ROLE_AUT
     ( <foreach collection="maps" item="item" index="index" separator="union all" >  
         select
                RU_ID_SEQ.Nextval,
                #{item.ruRoleId,jdbcType=DECIMAL}, 
                #{item.ruAutId,jdbcType=DECIMAL}, 
                #{item.ruTimeIns,jdbcType=TIMESTAMP}, 
                #{item.ruUserIns,jdbcType=VARCHAR}, 
                #{item.ruTimeLst,jdbcType=TIMESTAMP}, 
                 #{item.ruUserLst,jdbcType=VARCHAR},
                  #{item.ruStatus,jdbcType=CHAR}
        from USER_ROLE_AUT
    </foreach>
    )U

action里面:
@RequestMapping("roleAutSave")
@ResponseBody
public Map roleAutSave(HttpServletRequest request, HttpSession session)
        throws SystemException {
    Map<String, Object> rtnmap = null;
    Map<String, Object> map = new HashMap<String, Object>();
    try {
        String ruAutId = request.getParameter("ruAutId");// 获取到树形菜单选中的节点
        System.out.println(ruAutId);
        String[] adeArrs = ruAutId.split(",");
        System.out.println(adeArrs);
        String ruRoleId = request.getParameter("ruRoleId");// 获取选中的角色id
        String ruUserIns = request.getParameter("ruUserIns");// 获取登录的账号
        List<UserRoleAut> ls = new ArrayList<UserRoleAut>();
        UserRoleAut ur = null;
        for (String ade : adeArrs) {
            ur = new UserRoleAut();
            ur.setRuRoleId(new Long(ruRoleId));
            ur.setRuAutId(new Long(ade));
            ur.setRuUserIns(ruUserIns);
            ls.add(ur);
        }
        map.put("maps", ls);
        userRoleAutMapper.insert(map);// 保存
        userRoleAutMapper.deleteByPrimaryKey();
        rtnmap = okMap("roleAut");
    } catch (Exception e) {
        rtnmap = failMap("roleAut");
        e.printStackTrace();
    }
    return rtnmap;
}
  • 写回答

1条回答 默认 最新

  • 丵鹰 2015-08-19 03:57
    关注

    http://blog.csdn.net/strutce/article/details/47755845 from USER_ROLE_AUT 这个 表改成 dual这是oracle数据库默认的,建议吧序列查询提出来

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 做个有关计算的小程序
  • ¥15 MPI读取tif文件无法正常给各进程分配路径
  • ¥15 如何用MATLAB实现以下三个公式(有相互嵌套)
  • ¥30 关于#算法#的问题:运用EViews第九版本进行一系列计量经济学的时间数列数据回归分析预测问题 求各位帮我解答一下
  • ¥15 setInterval 页面闪烁,怎么解决
  • ¥15 如何让企业微信机器人实现消息汇总整合
  • ¥50 关于#ui#的问题:做yolov8的ui界面出现的问题
  • ¥15 如何用Python爬取各高校教师公开的教育和工作经历
  • ¥15 TLE9879QXA40 电机驱动
  • ¥20 对于工程问题的非线性数学模型进行线性化