@Override public RelDataType getRowType(RelDataTypeFactory typeFactory) { RelDataTypeFactory.Builder builder = new RelDataTypeFactory.Builder(typeFactory); Table table = tableManager.getTable(); for (Column c : table.getColumns()) { boolean nullable = !table.isPrimaryKeyColumn(c.name) || table.auto_increment; builder.add(c.name, convertType(c.type, typeFactory, nullable)); } return builder.build(); }
@Override protected RelDataType deriveRowType() { final RelDataTypeFactory typeFactory = getCluster().getTypeFactory(); return new RelDataTypeFactory.Builder(getCluster().getTypeFactory()) .add("none", typeFactory.createJavaType(Void.TYPE)) .build(); }