public void insertRecordTableq(List<Object[]> obs){
if(null != obs && !obs.isEmpty()){
String insertSql = "insert into product_check_company(id_uuid,column_name,oms,product,remark) values ";
StringBuffer sql = new StringBuffer();
for(int i = 0; i < obs.size(); i++){
sql.append("("+obs.get(i)[0]);
sql.append(",");
sql.append(obs.get(i)[1]);
sql.append(",");
sql.append(obs.get(i)[2]);
sql.append(",");
sql.append(obs.get(i)[3]);
sql.append(",");
sql.append(obs.get(i)[4]);
sql.append("),\n");
}
JdbcTemplate.update(insertSql+sql.toString().substring(0, sql.length() - 2));
}
}
SQL格式:insert into product_check_company(id_uuid,column_name,oms,product,remark) values (0,1,2,3,4),
(1,2,3,4,5),
(2,3,4,5,6),
(3,4,5,6,7)
效率比JdbcTemplate.batchUpdate高,一万条数据1秒内可完成。
此语句在MySQL 5, postgreSQL 9.3执行通过。