在insert查询中,我使用序列,因此我拒绝使用SimpleJdbcInsert....executeBatch(数据);
String sql = "INSERT INTO "+ schema +"."+ tableName +" (id, " + fieldName1 + ", " + fieldName2 + ") VALUES (BUF_SEQ.nextval, ?, ?)";
List<Object[]> recordValues = new ArrayList<Object[]>();
//... add values of records to recordValues list
// run bash update for insert
jdbcTemplate.batchUpdate(sql, recordValues);也许有人可以建议一种更好的使用Springframework jdbc的方式?插入大量记录。来测试SQL注入中的字段名。?
发布于 2015-08-07 17:19:06
1)在insert表的id列上创建触发器,而不是在insert查询中调用sequence。参考:How to create id with AUTO_INCREMENT on Oracle?
2)现在使用spring的批量更新进行批量插入,即jdbcTemplate.batchUpdate
在您的insert查询中,现在您不再需要定义id,每次在表上进行插入时,触发器都会被触发,id将会递增。
3)插入查询使用预准备语句,避免sql注入。
https://stackoverflow.com/questions/31873777
复制相似问题