code: protected String buildBulkInsertSQL(final TableMetadata metadata, final Class<? extends Object> type,
  			final SqlConfig sqlConfig, final int numberOfRecords) {
  		Map<String, MappingColumn> mappingColumns = MappingUtils.getMappingColumnMap(type, SqlKind.INSERT);
  		StringBuilder sql = buildInsertTargetBlock(metadata, mappingColumns, sqlConfig, false);
  		sql.append(" VALUES ");
  
  		IntStream.range(0, numberOfRecords).forEach(i -> {
  			if (i > 0) {
  				sql.append(",").append(System.lineSeparator());
  			}
  			sql.append(buildInsertRowBlock(metadata, mappingColumns, sqlConfig, false,
  					col -> buildBulkParamName(col.getCamelColumnName(), i)));
  		});
  		return sql.toString();
  	}
docs: BULK INSERT SQL生成
  
  @param metadata エンティティメタ情報
  @param type エイティティタイプ
  @param sqlConfig SQLコンフィグ
  @param numberOfRecords レコード行数
  @return INSERT SQL