# HG changeset patch # User Pedro Ferreira <pedro.ferreira@monetdbsolutions.com> # Date 1479212315 -3600 # Node ID 3b97ec05f6b1e32764a2b38cf75baaa0157413ec # Parent 8217f77fcf6b321c46f9886a837d260b47c81d40 Java classes to tables import working!!! diff --git a/src/main/java/nl/cwi/monetdb/embedded/tables/MonetDBTable.java b/src/main/java/nl/cwi/monetdb/embedded/tables/MonetDBTable.java --- a/src/main/java/nl/cwi/monetdb/embedded/tables/MonetDBTable.java +++ b/src/main/java/nl/cwi/monetdb/embedded/tables/MonetDBTable.java @@ -36,6 +36,9 @@ public class MonetDBTable extends Abstra */ private long connectionPointer; + /** + * These arrays are used for table imports. + */ private final int[] columnsJavaIndexes; private final int[] columnsMonetDBIndexes; private final String[] columnsNames; @@ -54,8 +57,8 @@ public class MonetDBTable extends Abstra this.columnsClasses = new Class[columns.length]; int i = 0; for(MonetDBTableColumn col : this.columns) { - this.columnsJavaIndexes[i] = col.getInternalMonetDBTypeIndex(); - this.columnsMonetDBIndexes[i] = col.getMapping().ordinal(); + this.columnsJavaIndexes[i] = col.getMapping().ordinal(); + this.columnsMonetDBIndexes[i] = col.getInternalMonetDBTypeIndex(); this.columnsNames[i] = col.getColumnName(); this.columnsClasses[i] = col.getMapping().getJavaClass(); i++; @@ -78,7 +81,7 @@ public class MonetDBTable extends Abstra */ @Override public int getNumberOfRows() { - int res = -1; + int res; try { String query = "SELECT COUNT(*) FROM " + this.schemaName + "." + this.tableName + ";"; QueryResultSet eqr = this.getConnection().sendQuery(query); @@ -86,6 +89,7 @@ public class MonetDBTable extends Abstra res = eqc.fetchFirstNColumnValues(1)[0].intValue(); eqr.close(); } catch (MonetDBEmbeddedException ex) { + res = -1; } return res; } @@ -360,7 +364,7 @@ public class MonetDBTable extends Abstra * Internal implementation of columns insertion. */ private native int appendColumnsInternal(long connectionPointer, String schemaName, String tableName, - int[] monetDBindexes, int[] javaindexes, String[] columnsNames, + int[] javaindexes, int[] monetDBindexes, String[] columnsNames, Class[] classes, Object[][] columns) throws MonetDBEmbeddedException; }