加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

Java拼接批量新增SQL语句

发布时间:2020-12-12 02:09:31 所属栏目:MySql教程 来源:网络整理
导读:StringBuffer addSql = new StringBuffer(1000 ); int batchSize = 50 ; int executeTime = 0 ; SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss" for ( int i=0; itrackIds.size(); i++ ) { if (i/batchSize executeTime) { // 50轮执行
StringBuffer addSql = new StringBuffer(1000);
            int batchSize = 50;
            int executeTime = 0;
            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"for (int i=0; i<trackIds.size(); i++) {
                if(i/batchSize > executeTime) {//50轮执行一次SQL(拷贝数据量太大)
                    String sql = addSql.substring(0,addSql.length() - 1);
                    baseJdbcDao.exceute(sql,null);
                    executeTime++;执行次数++
                }
                if(i%batchSize == 0) {50轮重新拼接SQL(防止SQL过长)
                    addSql = addSql.delete(0,addSql.length());
                    addSql.append("insert into " + DatabaseConstants.BASE + ".yk_behavior_monitor (TRACK_ID,PROGRAM_ID," +
                            "BEHAVIOR_ID,ACTION_TOTAL,ACTION_COMPLETED,CREATED_BY,CREATED_DATE,LAST_UPDATED_BY,LAST_UPDATED_DATE,REMOVE_FLAG) values");
                }
                for (Integer behaviorId : behaviorIds) {
                    addSql.append("(");
                    addSql.append(trackIds.get(i) + ",");
                    addSql.append(programId + ",1)">);
                    addSql.append(behaviorId + ",1)">);
                    addSql.append("0,1)">);
                    addSql.append(user.getUserId() + ",1)">);
                    addSql.append("'" + sdf.format(new Date()) + "',1)">);
                    addSql.append("0),1)">);
                }
            }
            String sql = addSql.substring(0,1)">);
            baseJdbcDao.exceute(sql,1)">null);

?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读