почему бы не использовать карту, заполненную непосредственно при действиях редактирования соответствующих TextField
s:
Map<String, String> newValues = new HashMap<>();
for (int i=1; i<= columnCount; i++) {
final String columnName = rsmd.getColumnName(i);
HBox h = new HBox();
Label column = new Label(columnName);
TextField entry = new TextField();
entry.textProperty().addListener((e,o,n) -> newValues.put(columnName, n));
h.getChildren().addAll(column, entry);
dialogVbox.getChildren().add(h);
}
затем вставьте дБ
String columns = newValues.entrySet().stream().map( n -> n.getKey() ).collect( Collectors.joining( "," ) );
String values = newValues.entrySet().stream().map( n -> n.getValue() ).collect( Collectors.joining( "," ) );
String sql = "insert into table ( " + columns + ") values (" + values + ")";
// run sql