Browse Source

DATAJDBC-264 - Fix insert statement for empty parameter list.

When an entity consists only of it's id column, the value list contained a single `:`.
This commit fixes this.

Original pull request: #88.
pull/82/merge
Yoichi Imai 7 years ago committed by Jens Schauder
parent
commit
8434f6e3dd
  1. 4
      src/main/java/org/springframework/data/jdbc/core/SqlGenerator.java

4
src/main/java/org/springframework/data/jdbc/core/SqlGenerator.java

@ -260,7 +260,9 @@ class SqlGenerator { @@ -260,7 +260,9 @@ class SqlGenerator {
columnNamesForInsert.addAll(additionalColumns);
String tableColumns = String.join(", ", columnNamesForInsert);
String parameterNames = columnNamesForInsert.stream().collect(Collectors.joining(", :", ":", ""));
String parameterNames = columnNamesForInsert.stream()//
.map(n -> String.format(":%s", n))//
.collect(Collectors.joining(", "));
return String.format(insertTemplate, entity.getTableName(), tableColumns, parameterNames);
}

Loading…
Cancel
Save