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

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数据库默认的,建议吧序列查询提出来

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

报告相同问题?

悬赏问题

  • ¥100 有人会搭建GPT-J-6B框架吗?有偿
  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名