private static <T,ID>MappedDeleteCollection<T,ID> build(DatabaseType databaseType,TableInfo<T,ID> tableInfo,int dataSize) throws SQLException {
  FieldType idField=tableInfo.getIdField();
  if (idField == null) {
    throw new SQLException("Cannot delete " + tableInfo.getDataClass() + " because it doesn't have an id field defined");
  }
  StringBuilder sb=new StringBuilder(128);
  appendTableName(databaseType,sb,"DELETE FROM ",tableInfo.getTableName());
  FieldType[] argFieldTypes=new FieldType[dataSize];
  appendWhereIds(databaseType,idField,sb,dataSize,argFieldTypes);
  return new MappedDeleteCollection<T,ID>(tableInfo,sb.toString(),argFieldTypes);
}

private static < T , ID > MappedDeleteCollection < T , ID > build ( DatabaseType databaseType , TableInfo < T , ID > tableInfo , int dataSize ) throws SQLException { FieldType idField = tableInfo . getIdField ( ) ; if ( idField == null ) { throw new SQLException ( "Cannot delete " + tableInfo . getDataClass ( ) + " because it doesn't have an id field defined" ) ; } StringBuilder sb = new StringBuilder ( 128 ) ; appendTableName ( databaseType , sb , "DELETE FROM " , tableInfo . getTableName ( ) ) ; FieldType [ ] argFieldTypes = new FieldType [ dataSize ] ; appendWhereIds ( databaseType , idField , sb , dataSize , argFieldTypes ) ; return new MappedDeleteCollection < T , ID > ( tableInfo , sb . toString ( ) , argFieldTypes ) ; }
this is private because the execute is the only method that should be called here .
