changeset 38:38292b17cc8c embedded

Fixed misspelling on documentation
author Pedro Ferreira <pedro.ferreira@monetdbsolutions.com>
date Thu, 03 Nov 2016 14:05:04 +0100 (2016-11-03)
parents 5588b030cc09
children 00d88ee56123
files src/main/java/nl/cwi/monetdb/jdbc/MonetConnection.java src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java src/main/java/nl/cwi/monetdb/jdbc/MonetPreparedStatement.java src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java src/main/java/nl/cwi/monetdb/jdbc/MonetStatement.java src/main/java/nl/cwi/monetdb/util/Exporter.java src/main/java/nl/cwi/monetdb/util/SQLExporter.java
diffstat 7 files changed, 527 insertions(+), 537 deletions(-) [+]
line wrap: on
line diff
--- a/src/main/java/nl/cwi/monetdb/jdbc/MonetConnection.java
+++ b/src/main/java/nl/cwi/monetdb/jdbc/MonetConnection.java
@@ -1179,7 +1179,7 @@ public class MonetConnection extends Mon
 	 */
 	@Override
 	public void setReadOnly(boolean readOnly) throws SQLException {
-		if (readOnly == true)
+		if (readOnly)
 			addWarning("cannot setReadOnly(true): read-only Connection mode not supported", "01M08");
 	}
 
@@ -1571,7 +1571,6 @@ public class MonetConnection extends Mon
 		 * Instructs the Response implementation to close and do the
 		 * necessary clean up procedures.
 		 *
-		 * @throws SQLException
 		 */
 		public abstract void close();
 	}
@@ -1603,9 +1602,9 @@ public class MonetConnection extends Mon
 		private String[] name;
 		/** The types of the columns in this result */
 		private String[] type;
-		/** The max string length for each columns in this result */
+		/** The max string length for each column in this result */
 		private int[] columnLengths;
-		/** The table for each columns in this result */
+		/** The table for each column in this result */
 		private String[] tableNames;
 		/** The query sequence number */
 		private final int seqnr;
@@ -1753,11 +1752,7 @@ public class MonetConnection extends Mon
 		 */
 		@Override
 		public boolean wantsMore() {
-			if (isSet[LENS] && isSet[TYPES] && isSet[TABLES] && isSet[NAMES]) {
-				return resultBlocks[0].wantsMore();
-			} else {
-				return true;
-			}
+			return !(isSet[LENS] && isSet[TYPES] && isSet[TABLES] && isSet[NAMES]) || resultBlocks[0].wantsMore();
 		}
 
 		/**
@@ -1811,8 +1806,8 @@ public class MonetConnection extends Mon
 			if (!isSet[NAMES]) error += "name header missing\n";
 			if (!isSet[TYPES]) error += "type header missing\n";
 			if (!isSet[TABLES]) error += "table name header missing\n";
-			if (!isSet[LENS]) error += "columns width header missing\n";
-			if (error != "") throw new SQLException(error, "M0M10");
+			if (!isSet[LENS]) error += "column width header missing\n";
+			if (!error.equals("")) throw new SQLException(error, "M0M10");
 		}
 
 		/**
@@ -2008,7 +2003,7 @@ public class MonetConnection extends Mon
 	 * <pre>
 	 * [ "value",	56	]
 	 * </pre>
-	 * where each columns is separated by ",\t" and each tuple surrounded
+	 * where each column is separated by ",\t" and each tuple surrounded
 	 * by brackets ("[" and "]").  A DataBlockResponse object holds the
 	 * raw data as read from the server, in a parsed manner, ready for
 	 * easy retrieval.
@@ -2091,7 +2086,6 @@ public class MonetConnection extends Mon
 		 * Instructs the Response implementation to close and do the
 		 * necessary clean up procedures.
 		 *
-		 * @throws SQLException
 		 */
 		@Override
 		public void close() {
@@ -2258,7 +2252,7 @@ public class MonetConnection extends Mon
 			this.maxrows = maxrows;
 			this.rstype = rstype;
 			this.rsconcur = rsconcur;
-			responses = new ArrayList<Response>();
+			responses = new ArrayList<>();
 			curResponse = -1;
 			seqnr = MonetConnection.seqCounter++;
 		}
@@ -2452,7 +2446,7 @@ public class MonetConnection extends Mon
 												if (rsresponses == null)
 													rsresponses = new HashMap<Integer, ResultSetResponse>();
 												rsresponses.put(
-														Integer.valueOf(id),
+														id,
 														(ResultSetResponse) res
 												);
 											}
@@ -2467,7 +2461,7 @@ public class MonetConnection extends Mon
 											res = new SchemaResponse();
 										break;
 										case StartOfHeaderParser.Q_TRANS:
-											boolean ac = sohp.getNextAsString().equals("t") ? true : false;
+											boolean ac = sohp.getNextAsString().equals("t");
 											if (autoCommit && ac) {
 												addWarning("Server enabled auto commit " +
 														"mode while local state " +
@@ -2485,7 +2479,7 @@ public class MonetConnection extends Mon
 											int rowcount = sohp.getNextAsInt();
 											int offset = sohp.getNextAsInt();
 											ResultSetResponse t =
-												rsresponses.get(Integer.valueOf(id));
+												rsresponses.get(id);
 											if (t == null) {
 												error = "M0M12!no ResultSetResponse with id " + id + " found";
 												break;
@@ -2597,14 +2591,14 @@ public class MonetConnection extends Mon
 				if (error != null) {
 					SQLException ret = null;
 					String[] errors = error.split("\n");
-					for (int i = 0; i < errors.length; i++) {
+					for (String error1 : errors) {
 						if (ret == null) {
-							ret = new SQLException(errors[i].substring(6),
-									errors[i].substring(0, 5));
+							ret = new SQLException(error1.substring(6),
+									error1.substring(0, 5));
 						} else {
 							ret.setNextException(new SQLException(
-										errors[i].substring(6),
-										errors[i].substring(0, 5)));
+									error1.substring(6),
+									error1.substring(0, 5)));
 						}
 					}
 					throw ret;
--- a/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
+++ b/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
@@ -87,7 +87,7 @@ public class MonetDatabaseMetaData exten
 	 * we set it to close (and free server resources) when the ResultSet object is closed by the caller.
 	 */
 	private ResultSet executeMetaDataQuery(String query) throws SQLException {
-		Statement stmt = null;
+		Statement stmt;
 		ResultSet rs = null;
 		stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
 		if (stmt != null) {
@@ -180,8 +180,6 @@ public class MonetDatabaseMetaData exten
 	 * By contrast, the method nullsAreSortedAtStart indicates whether NULL values are sorted at the beginning regardless of sort order.
 	 *
 	 * @return true because MonetDB shows NULL values at the beginning upon ORDER BY .. ASC
-	 *
-	 * @return negative of nullsAreSortedHigh()
 	 * @see #nullsAreSortedHigh()
 	 */
 	@Override
@@ -433,7 +431,7 @@ public class MonetDatabaseMetaData exten
 
 	/**
 	 * Internal utility method getConcatenatedStringFromQuery(String query)
-	 * args: query: SQL SELECT query. Only the output of the first columns is concatenated.
+	 * args: query: SQL SELECT query. Only the output of the first column is concatenated.
 	 * @return a String of query result values concatenated into one string, and values separated by comma's
 	 */
 	private String getConcatenatedStringFromQuery(String query) {
@@ -443,7 +441,7 @@ public class MonetDatabaseMetaData exten
 		try {
 			st = con.createStatement();
 			rs = st.executeQuery(query);
-			// Fetch the first columns output and concatenate the values into a StringBuilder separated by comma's
+			// Fetch the first column output and concatenate the values into a StringBuilder separated by comma's
 			boolean isfirst = true;
 			while (rs.next()) {
 				String value = rs.getString(1);
@@ -548,7 +546,7 @@ public class MonetDatabaseMetaData exten
 	}
 
 	/**
-	 * Is "ALTER TABLE" with an add columns supported?
+	 * Is "ALTER TABLE" with an add column supported?
 	 *
 	 * @return true if so
 	 */
@@ -558,7 +556,7 @@ public class MonetDatabaseMetaData exten
 	}
 
 	/**
-	 * Is "ALTER TABLE" with a drop columns supported?
+	 * Is "ALTER TABLE" with a drop column supported?
 	 *
 	 * @return true if so
 	 */
@@ -568,7 +566,7 @@ public class MonetDatabaseMetaData exten
 	}
 
 	/**
-	 * Is columns aliasing supported?
+	 * Is column aliasing supported?
 	 *
 	 * <p>If so, the SQL AS clause can be used to provide names for
 	 * computed columns or to provide alias names for columns as
@@ -580,7 +578,7 @@ public class MonetDatabaseMetaData exten
 	 * select count(C) as C_COUNT from T group by C;
 	 *
 	 * </pre><br>
-	 * should return a columns named as C_COUNT instead of count(C)
+	 * should return a column named as C_COUNT instead of count(C)
 	 *
 	 * @return true if so
 	 */
@@ -1343,14 +1341,14 @@ public class MonetDatabaseMetaData exten
 	}
 
 	/**
-	 * Whats the limit on columns name length.
+	 * Whats the limit on column name length.
 	 * I take some safety here, but it's just a varchar in MonetDB
 	 *
-	 * @return the maximum columns name length
+	 * @return the maximum column name length
 	 */
 	@Override
 	public int getMaxColumnNameLength() {
-		return 1024;	// In MonetDB the max length of columns sys._columns.name is defined as 1024
+		return 1024;	// In MonetDB the max length of column sys._columns.name is defined as 1024
 	}
 
 	/**
@@ -1396,7 +1394,7 @@ public class MonetDatabaseMetaData exten
 	/**
 	 * What is the maximum number of columns in a table?
 	 *
-	 * The theoretical max value of int columns sys._columns.id is 2^31 -1
+	 * The theoretical max value of int column sys._columns.id is 2^31 -1
 	 * but this is for all columns of all tables in all schemas (including all data dictionary columns).
 	 * For one table we should reduce it to a more practical soft limit of say 100 thousand
 	 *
@@ -1466,7 +1464,7 @@ public class MonetDatabaseMetaData exten
 	 */
 	@Override
 	public int getMaxSchemaNameLength() {
-		return 1024;	// In MonetDB the max length of columns sys.schemas.name is defined as 1024
+		return 1024;	// In MonetDB the max length of column sys.schemas.name is defined as 1024
 	}
 
 	/**
@@ -1476,7 +1474,7 @@ public class MonetDatabaseMetaData exten
 	 */
 	@Override
 	public int getMaxProcedureNameLength() {
-		return 256;	// In MonetDB the max length of columns sys.functions.name is defined as 256
+		return 256;	// In MonetDB the max length of column sys.functions.name is defined as 256
 	}
 
 	/**
@@ -1541,7 +1539,7 @@ public class MonetDatabaseMetaData exten
 	 */
 	@Override
 	public int getMaxTableNameLength() {
-		return 1024;	// In MonetDB the max length of columns sys._tables.name is defined as 1024
+		return 1024;	// In MonetDB the max length of column sys._tables.name is defined as 1024
 	}
 
 	/**
@@ -1562,7 +1560,7 @@ public class MonetDatabaseMetaData exten
 	 */
 	@Override
 	public int getMaxUserNameLength() {
-		return 1024;	// In MonetDB the max length of columns sys.db_user_info.name is defined as 1024
+		return 1024;	// In MonetDB the max length of column sys.db_user_info.name is defined as 1024
 	}
 
 	/**
@@ -1743,22 +1741,22 @@ public class MonetDatabaseMetaData exten
 	 * criteria are returned. They are ordered by PROCEDURE_SCHEM, PROCEDURE_NAME
 	 * and SPECIFIC_NAME. Within this, the return value, if any, is first.
 	 * Next are the parameter descriptions in call order. The
-	 * columns descriptions follow in columns number order.
+	 * column descriptions follow in column number order.
 	 *
-	 * <p>Each row in the ResultSet is a parameter description or columns
+	 * <p>Each row in the ResultSet is a parameter description or column
 	 * description with the following fields:
 	 * <ol>
 	 * <li><b>PROCEDURE_CAT</b> String => procedure catalog (may be null)
 	 * <li><b>PROCEDURE_SCHEM</b> String => procedure schema (may be null)
 	 * <li><b>PROCEDURE_NAME</b> String => procedure name
-	 * <li><b>COLUMN_NAME</b> String => columns/parameter name
-	 * <li><b>COLUMN_TYPE</b> Short => kind of columns/parameter:
+	 * <li><b>COLUMN_NAME</b> String => column/parameter name
+	 * <li><b>COLUMN_TYPE</b> Short => kind of column/parameter:
 	 * <ul><li>procedureColumnUnknown - nobody knows
 	 * <li>procedureColumnIn - IN parameter
 	 * <li>procedureColumnInOut - INOUT parameter
 	 * <li>procedureColumnOut - OUT parameter
 	 * <li>procedureColumnReturn - procedure return value
-	 * <li>procedureColumnResult - result columns in ResultSet
+	 * <li>procedureColumnResult - result column in ResultSet
 	 * </ul>
 	 * <li><b>DATA_TYPE</b> int => SQL type from java.sql.Types
 	 * <li><b>TYPE_NAME</b> String => SQL type name, for a UDT type the type name is fully qualified
@@ -1771,8 +1769,8 @@ public class MonetDatabaseMetaData exten
 	 * <li>procedureNullable - allows NULL values
 	 * <li>procedureNullableUnknown - nullability unknown
 	 * </ul>
-	 * <li><b>REMARKS</b> String => comment describing parameter/columns
-	 * <li><b>COLUMN_DEF</b> String => default value for the columns, which should be interpreted as a string when the value is enclosed in single quotes (may be null)
+	 * <li><b>REMARKS</b> String => comment describing parameter/column
+	 * <li><b>COLUMN_DEF</b> String => default value for the column, which should be interpreted as a string when the value is enclosed in single quotes (may be null)
 	 *         The string NULL (not enclosed in quotes) - if NULL was specified as the default value
 	 *         TRUNCATE (not enclosed in quotes) - if the specified default value cannot be represented without truncation
 	 *         NULL - if a default value was not specified
@@ -1781,8 +1779,8 @@ public class MonetDatabaseMetaData exten
 	 * <li><b>CHAR_OCTET_LENGTH</b> int => the maximum length of binary and character based columns. For any other datatype the returned value is a NULL
 	 * <li><b>ORDINAL_POSITION</b> int => the ordinal position, starting from 1, for the input and output parameters for a procedure.
 	 *	A value of 0 is returned if this row describes the procedure's return value. For result set columns, it is the ordinal position of the
-	 *	columns in the result set starting from 1. If there are multiple result sets, the columns ordinal positions are implementation defined.
-	 * <li><b>IS_NULLABLE</b> String => ISO rules are used to determine the nullability for a columns.
+	 *	column in the result set starting from 1. If there are multiple result sets, the column ordinal positions are implementation defined.
+	 * <li><b>IS_NULLABLE</b> String => ISO rules are used to determine the nullability for a column.
 	 * <ul><li>YES --- if the parameter can include NULLs
 	 * <li>NO --- if the parameter cannot include NULLs
 	 * <li>empty string --- if the nullability for the parameter is unknown
@@ -1796,8 +1794,8 @@ public class MonetDatabaseMetaData exten
 	 *	"" retrieves those without a schema;
 	 *	null means that the schema name should not be used to narrow the search
 	 * @param procedureNamePattern - a procedure name pattern; must match the procedure name as it is stored in the database
-	 * @param columnNamePattern - a columns name pattern; must match the columns name as it is stored in the database
-	 * @return ResultSet - each row describes a stored procedure parameter or columns
+	 * @param columnNamePattern - a column name pattern; must match the column name as it is stored in the database
+	 * @return ResultSet - each row describes a stored procedure parameter or column
 	 * @throws SQLException if a database-access error occurs
 	 * @see #getSearchStringEscape
 	 */
@@ -1886,7 +1884,7 @@ public class MonetDatabaseMetaData exten
 
 	/**
 	 * Returns the given string between two double quotes for usage as
-	 * exact columns or table name in SQL queries.
+	 * exact column or table name in SQL queries.
 	 *
 	 * @param in the string to quote
 	 * @return the quoted string
@@ -1916,7 +1914,7 @@ public class MonetDatabaseMetaData exten
 	 * <li><b>TYPE_CAT</b> String => the types catalog (may be null)
 	 * <li><b>TYPE_SCHEM</b> String => the types schema (may be null)
 	 * <li><b>TYPE_NAME</b> String => type name (may be null)
-	 * <li><b>SELF_REFERENCING_COL_NAME</b> String => name of the designated "identifier" columns of a typed table (may be null)
+	 * <li><b>SELF_REFERENCING_COL_NAME</b> String => name of the designated "identifier" column of a typed table (may be null)
 	 * <li><b>REF_GENERATION</b> String => specifies how values in SELF_REFERENCING_COL_NAME are created. Values are "SYSTEM", "USER", "DERIVED". (may be null)
 	 * </ol>
 	 *
@@ -2019,7 +2017,7 @@ public class MonetDatabaseMetaData exten
 	 * Get the schema names available in this database.  The results
 	 * are ordered by schema name.
 	 *
-	 * <P>The schema columns is:
+	 * <P>The schema column is:
 	 *	<OL>
 	 *	<LI><B>TABLE_SCHEM</B> String => schema name
 	 *	<LI><B>TABLE_CATALOG</B> String => catalog name (may be null)
@@ -2032,7 +2030,7 @@ public class MonetDatabaseMetaData exten
 	 * @param schemaPattern a schema name; must match the schema name as
 	 *        it is stored in the database; null means schema name
 	 *        should not be used to narrow down the search.
-	 * @return ResultSet each row has a single String columns that is a
+	 * @return ResultSet each row has a single String column that is a
 	 *         schema name
 	 * @throws SQLException if a database error occurs
 	 */
@@ -2063,13 +2061,13 @@ public class MonetDatabaseMetaData exten
 	 * Get the catalog names available in this database.  The results
 	 * are ordered by catalog name.
 	 *
-	 * <P>The catalog columns is:
+	 * <P>The catalog column is:
 	 *	<OL>
 	 *	<LI><B>TABLE_CAT</B> String => catalog name
 	 *	</OL>
 	 *
 	 *
-	 * @return ResultSet each row has a single String columns that is a
+	 * @return ResultSet each row has a single String column that is a
 	 *         catalog name
 	 * @throws SQLException if a database error occurs
 	 */
@@ -2091,7 +2089,7 @@ public class MonetDatabaseMetaData exten
 	 *			"LOCAL TEMPORARY", "ALIAS", "SYNONYM".
 	 *	</OL>
 	 *
-	 * @return ResultSet each row has a single String columns that is a
+	 * @return ResultSet each row has a single String column that is a
 	 *         table type
 	 * @throws SQLException if a database error occurs
 	 */
@@ -2118,19 +2116,19 @@ public class MonetDatabaseMetaData exten
 	/**
 	 * Get a description of table columns available in a catalog.
 	 *
-	 * <P>Only columns descriptions matching the catalog, schema, table
-	 * and columns name criteria are returned.  They are ordered by
+	 * <P>Only column descriptions matching the catalog, schema, table
+	 * and column name criteria are returned.  They are ordered by
 	 * TABLE_SCHEM, TABLE_NAME and ORDINAL_POSITION.
 	 *
-	 * <P>Each columns description has the following columns:
+	 * <P>Each column description has the following columns:
 	 *	<OL>
 	 *	<LI><B>TABLE_CAT</B> String => table catalog (may be null)
 	 *	<LI><B>TABLE_SCHEM</B> String => table schema (may be null)
 	 *	<LI><B>TABLE_NAME</B> String => table name
-	 *	<LI><B>COLUMN_NAME</B> String => columns name
+	 *	<LI><B>COLUMN_NAME</B> String => column name
 	 *	<LI><B>DATA_TYPE</B> int => SQL type from java.sql.Types
 	 *	<LI><B>TYPE_NAME</B> String => Data source dependent type name
-	 *	<LI><B>COLUMN_SIZE</B> int => columns size.	For char or date
+	 *	<LI><B>COLUMN_SIZE</B> int => column size.	For char or date
 	 *		types this is the maximum number of characters, for numeric or
 	 *		decimal types this is precision.
 	 *	<LI><B>BUFFER_LENGTH</B> is not used.
@@ -2142,32 +2140,32 @@ public class MonetDatabaseMetaData exten
 	 *		<LI> columnNullable - definitely allows NULL values
 	 *		<LI> columnNullableUnknown - nullability unknown
 	 *		</UL>
-	 *	<LI><B>REMARKS</B> String => comment describing columns (may be null)
+	 *	<LI><B>REMARKS</B> String => comment describing column (may be null)
 	 *	<LI><B>COLUMN_DEF</B> String => default value (may be null)
 	 *	<LI><B>SQL_DATA_TYPE</B> int => unused
 	 *	<LI><B>SQL_DATETIME_SUB</B> int => unused
 	 *	<LI><B>CHAR_OCTET_LENGTH</B> int => for char types the
-	 *		 maximum number of bytes in the columns
-	 *	<LI><B>ORDINAL_POSITION</B> int => index of columns in table
+	 *		 maximum number of bytes in the column
+	 *	<LI><B>ORDINAL_POSITION</B> int => index of column in table
 	 *		(starting at 1)
-	 *	<LI><B>IS_NULLABLE</B> String => "NO" means columns definitely
-	 *		does not allow NULL values; "YES" means the columns might
+	 *	<LI><B>IS_NULLABLE</B> String => "NO" means column definitely
+	 *		does not allow NULL values; "YES" means the column might
 	 *		allow NULL values.	An empty string means nobody knows.
 	 *	<LI><B>SCOPE_CATALOG</B> String => catalog of table that is the scope of a reference attribute (null if DATA_TYPE isn't REF)
 	 *	<LI><B>SCOPE_SCHEMA</B> String => schema of table that is the scope of a reference attribute (null if the DATA_TYPE isn't REF)
 	 *	<LI><B>SCOPE_TABLE</B> String => table name that this the scope of a reference attribute (null if the DATA_TYPE isn't REF)
 	 *	<LI><B>SOURCE_DATA_TYPE</B> short => source type of a distinct type or user-generated Ref type, SQL type from java.sql.Types (null if DATA_TYPE isn't DISTINCT or user-generated REF)
-	 *	<LI><B>IS_AUTOINCREMENT</B> String => Indicates whether this columns is auto incremented
+	 *	<LI><B>IS_AUTOINCREMENT</B> String => Indicates whether this column is auto incremented
 	 *		<UL>
-	 *		<LI> YES --- if the columns is auto incremented
-	 *		<LI> NO --- if the columns is not auto incremented
-	 *		<LI> empty string --- if it cannot be determined whether the columns is auto incremented
+	 *		<LI> YES --- if the column is auto incremented
+	 *		<LI> NO --- if the column is not auto incremented
+	 *		<LI> empty string --- if it cannot be determined whether the column is auto incremented
 	 *		</UL>
-	 *	<LI><B>IS_GENERATEDCOLUMN</B> String => Indicates whether this is a generated columns
+	 *	<LI><B>IS_GENERATEDCOLUMN</B> String => Indicates whether this is a generated column
 	 *		<UL>
-	 *		<LI> YES --- if this a generated columns
-	 *		<LI> NO --- if this not a generated columns
-	 *		<LI> empty string --- if it cannot be determined whether this is a generated columns
+	 *		<LI> YES --- if this a generated column
+	 *		<LI> NO --- if this not a generated column
+	 *		<LI> empty string --- if it cannot be determined whether this is a generated column
 	 *		</UL>
 	 *	</OL>
 	 *
@@ -2179,8 +2177,8 @@ public class MonetDatabaseMetaData exten
 	 *	null means that the schema name should not be used to narrow the search
 	 * @param tableNamePattern - a table name pattern; must match the table name as it is stored in the database
 	 *	For all tables this should be "%"
-	 * @param columnNamePattern - a columns name pattern; must match the columns name as it is stored in the database
-	 * @return ResultSet - each row is a columns description
+	 * @param columnNamePattern - a column name pattern; must match the column name as it is stored in the database
+	 * @return ResultSet - each row is a column description
 	 * @throws SQLException if a database error occurs
 	 * @see #getSearchStringEscape
 	 */
@@ -2250,7 +2248,7 @@ public class MonetDatabaseMetaData exten
 	 * Get a description of the access rights for a table's columns.
 	 * MonetDB doesn't have this level of access rights.
 	 *
-	 * <P>Only privileges matching the columns name criteria are
+	 * <P>Only privileges matching the column name criteria are
 	 * returned.  They are ordered by COLUMN_NAME and PRIVILEGE.
 	 *
 	 * <P>Each privilige description has the following columns:
@@ -2258,7 +2256,7 @@ public class MonetDatabaseMetaData exten
 	 *	<LI><B>TABLE_CAT</B> String => table catalog (may be null)
 	 *	<LI><B>TABLE_SCHEM</B> String => table schema (may be null)
 	 *	<LI><B>TABLE_NAME</B> String => table name
-	 *	<LI><B>COLUMN_NAME</B> String => columns name
+	 *	<LI><B>COLUMN_NAME</B> String => column name
 	 *	<LI><B>GRANTOR</B> => grantor of access (may be null)
 	 *	<LI><B>GRANTEE</B> String => grantee of access
 	 *	<LI><B>PRIVILEGE</B> String => name of access (SELECT,
@@ -2270,8 +2268,8 @@ public class MonetDatabaseMetaData exten
 	 * @param catalog a catalog name; "" retrieves those without a catalog
 	 * @param schemaPattern a schema name; "" retrieves those without a schema
 	 * @param tableNamePattern a table name
-	 * @param columnNamePattern a columns name pattern
-	 * @return ResultSet each row is a columns privilege description
+	 * @param columnNamePattern a column name pattern
+	 * @return ResultSet each row is a column privilege description
 	 * @see #getSearchStringEscape
 	 * @throws SQLException if a database error occurs
 	 */
@@ -2422,7 +2420,7 @@ public class MonetDatabaseMetaData exten
 	 * Get a description of a table's optimal set of columns that
 	 * uniquely identifies a row. They are ordered by SCOPE.
 	 *
-	 * <P>Each columns description has the following columns:
+	 * <P>Each column description has the following columns:
 	 *	<OL>
 	 *	<LI><B>SCOPE</B> short => actual scope of result
 	 *		<UL>
@@ -2430,18 +2428,18 @@ public class MonetDatabaseMetaData exten
 	 *		<LI> bestRowTransaction - valid for remainder of current transaction
 	 *		<LI> bestRowSession - valid for remainder of current session
 	 *		</UL>
-	 *	<LI><B>COLUMN_NAME</B> String => columns name
+	 *	<LI><B>COLUMN_NAME</B> String => column name
 	 *	<LI><B>DATA_TYPE</B> int => SQL data type from java.sql.Types
 	 *	<LI><B>TYPE_NAME</B> String => Data source dependent type name
 	 *	<LI><B>COLUMN_SIZE</B> int => precision
 	 *	<LI><B>BUFFER_LENGTH</B> int => not used
 	 *	<LI><B>DECIMAL_DIGITS</B> short  => scale
-	 *	<LI><B>PSEUDO_COLUMN</B> short => is this a pseudo columns
+	 *	<LI><B>PSEUDO_COLUMN</B> short => is this a pseudo column
 	 *		like an Oracle ROWID
 	 *		<UL>
-	 *		<LI> bestRowUnknown - may or may not be pseudo columns
-	 *		<LI> bestRowNotPseudo - is NOT a pseudo columns
-	 *		<LI> bestRowPseudo - is a pseudo columns
+	 *		<LI> bestRowUnknown - may or may not be pseudo column
+	 *		<LI> bestRowNotPseudo - is NOT a pseudo column
+	 *		<LI> bestRowPseudo - is a pseudo column
 	 *		</UL>
 	 *	</OL>
 	 *
@@ -2450,7 +2448,7 @@ public class MonetDatabaseMetaData exten
 	 * @param table a table name
 	 * @param scope the scope of interest; use same values as SCOPE
 	 * @param nullable include columns that are nullable?
-	 * @return ResultSet each row is a columns description
+	 * @return ResultSet each row is a column description
 	 * @throws SQLException if a database error occurs
 	 */
 	@Override
@@ -2510,27 +2508,27 @@ public class MonetDatabaseMetaData exten
 	 * Get a description of a table's columns that are automatically
 	 * updated when any value in a row is updated. They are unordered.
 	 *
-	 * <P>Each columns description has the following columns:
+	 * <P>Each column description has the following columns:
 	 *	<OL>
 	 *	<LI><B>SCOPE</B> short => is not used
-	 *	<LI><B>COLUMN_NAME</B> String => columns name
+	 *	<LI><B>COLUMN_NAME</B> String => column name
 	 *	<LI><B>DATA_TYPE</B> int => SQL data type from java.sql.Types
 	 *	<LI><B>TYPE_NAME</B> String => Data source dependent type name
 	 *	<LI><B>COLUMN_SIZE</B> int => precision
-	 *	<LI><B>BUFFER_LENGTH</B> int => length of columns value in bytes
+	 *	<LI><B>BUFFER_LENGTH</B> int => length of column value in bytes
 	 *	<LI><B>DECIMAL_DIGITS</B> short => scale
-	 *	<LI><B>PSEUDO_COLUMN</B> short => is this a pseudo columns like an Oracle ROWID
+	 *	<LI><B>PSEUDO_COLUMN</B> short => is this a pseudo column like an Oracle ROWID
 	 *		<UL>
-	 *		<LI> versionColumnUnknown - may or may not be pseudo columns
-	 *		<LI> versionColumnNotPseudo - is NOT a pseudo columns
-	 *		<LI> versionColumnPseudo - is a pseudo columns
+	 *		<LI> versionColumnUnknown - may or may not be pseudo column
+	 *		<LI> versionColumnNotPseudo - is NOT a pseudo column
+	 *		<LI> versionColumnPseudo - is a pseudo column
 	 *		</UL>
 	 *	</OL>
 	 *
 	 * @param catalog a catalog name; "" retrieves those without a catalog
 	 * @param schema a schema name; "" retrieves those without a schema
 	 * @param table a table name
-	 * @return ResultSet each row is a columns description
+	 * @return ResultSet each row is a column description
 	 * @throws SQLException if a database error occurs
 	 */
 	@Override
@@ -2559,12 +2557,12 @@ public class MonetDatabaseMetaData exten
 	 * Get a description of a table's primary key columns.  They
 	 * are ordered by COLUMN_NAME.
 	 *
-	 * <P>Each columns description has the following columns:
+	 * <P>Each column description has the following columns:
 	 *	<OL>
 	 *	<LI><B>TABLE_CAT</B> String => table catalog (may be null)
 	 *	<LI><B>TABLE_SCHEM</B> String => table schema (may be null)
 	 *	<LI><B>TABLE_NAME</B> String => table name
-	 *	<LI><B>COLUMN_NAME</B> String => columns name
+	 *	<LI><B>COLUMN_NAME</B> String => column name
 	 *	<LI><B>KEY_SEQ</B> short => sequence number within primary key
 	 *	<LI><B>PK_NAME</B> String => primary key name (may be null)
 	 *	</OL>
@@ -2573,7 +2571,7 @@ public class MonetDatabaseMetaData exten
 	 * @param schema a schema name pattern; "" retrieves those
 	 * without a schema
 	 * @param table a table name
-	 * @return ResultSet each row is a primary key columns description
+	 * @return ResultSet each row is a primary key column description
 	 * @throws SQLException if a database error occurs
 	 */
 	@Override
@@ -2656,7 +2654,7 @@ public class MonetDatabaseMetaData exten
 	 * imported by a table). They are ordered by PKTABLE_CAT,
 	 * PKTABLE_SCHEM, PKTABLE_NAME, and KEY_SEQ.
 	 *
-	 * <P>Each primary key columns description has the following columns:
+	 * <P>Each primary key column description has the following columns:
 	 *	<OL>
 	 *	<LI><B>PKTABLE_CAT</B> String => primary key table catalog
 	 *		being imported (may be null)
@@ -2664,14 +2662,14 @@ public class MonetDatabaseMetaData exten
 	 *		being imported (may be null)
 	 *	<LI><B>PKTABLE_NAME</B> String => primary key table name
 	 *		being imported
-	 *	<LI><B>PKCOLUMN_NAME</B> String => primary key columns name
+	 *	<LI><B>PKCOLUMN_NAME</B> String => primary key column name
 	 *		being imported
 	 *	<LI><B>FKTABLE_CAT</B> String => foreign key table catalog (may be null)
 	 *	<LI><B>FKTABLE_SCHEM</B> String => foreign key table schema (may be null)
 	 *	<LI><B>FKTABLE_NAME</B> String => foreign key table name
-	 *	<LI><B>FKCOLUMN_NAME</B> String => foreign key columns name
+	 *	<LI><B>FKCOLUMN_NAME</B> String => foreign key column name
 	 *	<LI><B>KEY_SEQ</B> short => sequence number within foreign key
-	 *		(a value of 1 represents the first columns of the foreign key, a value of 2 would represent the second columns within the foreign key).
+	 *		(a value of 1 represents the first column of the foreign key, a value of 2 would represent the second column within the foreign key).
 	 *	<LI><B>UPDATE_RULE</B> short => What happens to
 	 *		 foreign key when primary is updated:
 	 *		<UL>
@@ -2706,7 +2704,7 @@ public class MonetDatabaseMetaData exten
 	 * @param catalog a catalog name; "" retrieves those without a catalog
 	 * @param schema a schema name pattern; "" retrieves those without a schema
 	 * @param table a table name
-	 * @return ResultSet each row is a primary key columns description
+	 * @return ResultSet each row is a primary key column description
 	 * @see #getExportedKeys
 	 * @throws SQLException if a database error occurs
 	 */
@@ -2739,22 +2737,22 @@ public class MonetDatabaseMetaData exten
 	 * table's primary key columns (the foreign keys exported by a table).
 	 * They are ordered by FKTABLE_CAT, FKTABLE_SCHEM, FKTABLE_NAME, and KEY_SEQ.
 	 *
-	 * <P>Each foreign key columns description has the following columns:
+	 * <P>Each foreign key column description has the following columns:
 	 *	<OL>
 	 *	<LI><B>PKTABLE_CAT</B> String => primary key table catalog (may be null)
 	 *	<LI><B>PKTABLE_SCHEM</B> String => primary key table schema (may be null)
 	 *	<LI><B>PKTABLE_NAME</B> String => primary key table name
-	 *	<LI><B>PKCOLUMN_NAME</B> String => primary key columns name
+	 *	<LI><B>PKCOLUMN_NAME</B> String => primary key column name
 	 *	<LI><B>FKTABLE_CAT</B> String => foreign key table catalog (may be null)
 	 *		being exported (may be null)
 	 *	<LI><B>FKTABLE_SCHEM</B> String => foreign key table schema (may be null)
 	 *		being exported (may be null)
 	 *	<LI><B>FKTABLE_NAME</B> String => foreign key table name
 	 *		being exported
-	 *	<LI><B>FKCOLUMN_NAME</B> String => foreign key columns name
+	 *	<LI><B>FKCOLUMN_NAME</B> String => foreign key column name
 	 *		being exported
 	 *	<LI><B>KEY_SEQ</B> short => sequence number within foreign key
-	 *		(a value of 1 represents the first columns of the foreign key, a value of 2 would represent the second columns within the foreign key).
+	 *		(a value of 1 represents the first column of the foreign key, a value of 2 would represent the second column within the foreign key).
 	 *	<LI><B>UPDATE_RULE</B> short => What happens to
 	 *		 foreign key when primary is updated:
 	 *		<UL>
@@ -2789,7 +2787,7 @@ public class MonetDatabaseMetaData exten
 	 * @param catalog a catalog name; "" retrieves those without a catalog
 	 * @param schema a schema name pattern; "" retrieves those without a schema
 	 * @param table a table name
-	 * @return ResultSet each row is a foreign key columns description
+	 * @return ResultSet each row is a foreign key column description
 	 * @see #getImportedKeys
 	 * @throws SQLException if a database error occurs
 	 */
@@ -2825,22 +2823,22 @@ public class MonetDatabaseMetaData exten
 	 * (most tables only import a foreign key from a table once.)
 	 * They are ordered by FKTABLE_CAT, FKTABLE_SCHEM, FKTABLE_NAME, and KEY_SEQ.
 	 *
-	 * <P>Each foreign key columns description has the following columns:
+	 * <P>Each foreign key column description has the following columns:
 	 *	<OL>
 	 *	<LI><B>PKTABLE_CAT</B> String => primary key table catalog (may be null)
 	 *	<LI><B>PKTABLE_SCHEM</B> String => primary key table schema (may be null)
 	 *	<LI><B>PKTABLE_NAME</B> String => primary key table name
-	 *	<LI><B>PKCOLUMN_NAME</B> String => primary key columns name
+	 *	<LI><B>PKCOLUMN_NAME</B> String => primary key column name
 	 *	<LI><B>FKTABLE_CAT</B> String => foreign key table catalog (may be null)
 	 *		being exported (may be null)
 	 *	<LI><B>FKTABLE_SCHEM</B> String => foreign key table schema (may be null)
 	 *		being exported (may be null)
 	 *	<LI><B>FKTABLE_NAME</B> String => foreign key table name
 	 *		being exported
-	 *	<LI><B>FKCOLUMN_NAME</B> String => foreign key columns name
+	 *	<LI><B>FKCOLUMN_NAME</B> String => foreign key column name
 	 *		being exported
 	 *	<LI><B>KEY_SEQ</B> short => sequence number within foreign key
-	 *		(a value of 1 represents the first columns of the foreign key, a value of 2 would represent the second columns within the foreign key).
+	 *		(a value of 1 represents the first column of the foreign key, a value of 2 would represent the second column within the foreign key).
 	 *	<LI><B>UPDATE_RULE</B> short => What happens to
 	 *		 foreign key when primary is updated:
 	 *		<UL>
@@ -2878,7 +2876,7 @@ public class MonetDatabaseMetaData exten
 	 * @param fcatalog foreign key catalog name; "" retrieves those without a catalog
 	 * @param fschema foreign key schema name pattern; "" retrieves those without a schema
 	 * @param ftable koreign key table name
-	 * @return ResultSet each row is a foreign key columns description
+	 * @return ResultSet each row is a foreign key column description
 	 * @throws SQLException if a database error occurs
 	 * @see #getImportedKeys
 	 */
@@ -2973,7 +2971,7 @@ public class MonetDatabaseMetaData exten
 	 *	</OL>
 	 *
 	 * @return ResultSet each row is a SQL type description
-	 * @throws Exception if the developer made a Boo-Boo
+	 * @throws SQLException if the developer made a Boo-Boo
 	 */
 	@Override
 	public ResultSet getTypeInfo() throws SQLException {
@@ -3016,7 +3014,7 @@ public class MonetDatabaseMetaData exten
 	 * Retrieves a description of the given table's indices and statistics.
 	 * They are ordered by NON_UNIQUE, TYPE, INDEX_NAME, and ORDINAL_POSITION.
 	 *
-	 * <P>Each index columns description has the following columns:
+	 * <P>Each index column description has the following columns:
 	 *	<OL>
 	 *	<LI><B>TABLE_CAT</B> String => table catalog (may be null)
 	 *	<LI><B>TABLE_SCHEM</B> String => table schema (may be null)
@@ -3035,11 +3033,11 @@ public class MonetDatabaseMetaData exten
 	 *		<LI> tableIndexHashed - this is a hashed index
 	 *		<LI> tableIndexOther - this is some other style of index
 	 *		</UL>
-	 *	<LI><B>ORDINAL_POSITION</B> short => columns sequence number
+	 *	<LI><B>ORDINAL_POSITION</B> short => column sequence number
 	 *		within index; zero when TYPE is tableIndexStatistic
-	 *	<LI><B>COLUMN_NAME</B> String => columns name; null when TYPE is
+	 *	<LI><B>COLUMN_NAME</B> String => column name; null when TYPE is
 	 *		tableIndexStatistic
-	 *	<LI><B>ASC_OR_DESC</B> String => columns sort sequence, "A" => ascending
+	 *	<LI><B>ASC_OR_DESC</B> String => column sort sequence, "A" => ascending
 	 *		"D" => descending, may be null if sort sequence is not supported;
 	 *		null when TYPE is tableIndexStatistic
 	 *	<LI><B>CARDINALITY</B> int => When TYPE is tableIndexStatisic then
@@ -3060,7 +3058,7 @@ public class MonetDatabaseMetaData exten
 	 * @param approximate when true, result is allowed to reflect approximate
 	 *	   or out of data values; when false, results are requested to be
 	 *	   accurate
-	 * @return ResultSet each row is an index columns description
+	 * @return ResultSet each row is an index column description
 	 * @throws SQLException if a database occurs
 	 */
 	@Override
@@ -3256,7 +3254,6 @@ public class MonetDatabaseMetaData exten
 	 *   user-generated reference type of the SELF_REFERENCING_COLUMN of a structured type as defined
 	 *   in java.sql.Types (null if DATA_TYPE is not DISTINCT or not STRUCT with REFERENCE_GENERATION = USER_DEFINED)
 	 *
-	 * @throws SQLException
 	 */
 	@Override
 	public ResultSet getUDTs(
@@ -3507,7 +3504,7 @@ public class MonetDatabaseMetaData exten
 	 *	<LI><B>ATTR_TYPE_NAME</B> String => Data source dependent type name.
 	 *	For a UDT, the type name is fully qualified. For a REF, the type name is
 	 *	fully qualified and represents the target type of the reference type.
-	 *	<LI><B>ATTR_SIZE</B> int => columns size.  For char or date
+	 *	<LI><B>ATTR_SIZE</B> int => column size.  For char or date
 	 *		types this is the maximum number of characters; for numeric or
 	 *		decimal types this is precision.
 	 *	<LI><B>DECIMAL_DIGITS</B> int => the number of fractional digits
@@ -3518,16 +3515,16 @@ public class MonetDatabaseMetaData exten
 	 *		<LI> attributeNullable - definitely allows NULL values
 	 *		<LI> attributeNullableUnknown - nullability unknown
 	 *		</UL>
-	 *	<LI><B>REMARKS</B> String => comment describing columns (may be <code>null</code>)
+	 *	<LI><B>REMARKS</B> String => comment describing column (may be <code>null</code>)
 	 *	<LI><B>ATTR_DEF</B> String => default value (may be <code>null</code>)
 	 *	<LI><B>SQL_DATA_TYPE</B> int => unused
 	 *	<LI><B>SQL_DATETIME_SUB</B> int => unused
 	 *	<LI><B>CHAR_OCTET_LENGTH</B> int => for char types the
-	 *		 maximum number of bytes in the columns
-	 *	<LI><B>ORDINAL_POSITION</B> int => index of columns in table
+	 *		 maximum number of bytes in the column
+	 *	<LI><B>ORDINAL_POSITION</B> int => index of column in table
 	 *		(starting at 1)
-	 *	<LI><B>IS_NULLABLE</B> String => "NO" means columns definitely
-	 *		does not allow NULL values; "YES" means the columns might
+	 *	<LI><B>IS_NULLABLE</B> String => "NO" means column definitely
+	 *		does not allow NULL values; "YES" means the column might
 	 *		allow NULL values.	An empty string means unknown.
 	 *	<LI><B>SCOPE_CATALOG</B> String => catalog of table that is the
 	 *		scope of a reference attribute (<code>null</code> if DATA_TYPE isn't REF)
@@ -3730,13 +3727,13 @@ public class MonetDatabaseMetaData exten
 	 * Get the schema names available in this database.  The results
 	 * are ordered by schema name.
 	 *
-	 * <P>The schema columns is:
+	 * <P>The schema column is:
 	 *	<OL>
 	 *	<LI><B>TABLE_SCHEM</B> String => schema name
 	 *	<LI><B>TABLE_CATALOG</B> String => catalog name (may be null)
 	 *	</OL>
 	 *
-	 * @return ResultSet each row has a single String columns that is a
+	 * @return ResultSet each row has a single String column that is a
 	 *         schema name
 	 * @throws SQLException if a database error occurs
 	 */
@@ -3788,7 +3785,7 @@ public class MonetDatabaseMetaData exten
 	 *       property. This will typically contain information as
 	 *       to where this property is stored in the database.
 	 *
-	 * The ResultSet is sorted by the NAME columns
+	 * The ResultSet is sorted by the NAME column
 	 *
 	 * @return A ResultSet object; each row is a supported client info
 	 *         property, none in case of MonetDB's current JDBC driver
@@ -3903,19 +3900,19 @@ public class MonetDatabaseMetaData exten
 	 * Only descriptions matching the schema, function and parameter name criteria are returned.
 	 * They are ordered by FUNCTION_CAT, FUNCTION_SCHEM, FUNCTION_NAME and SPECIFIC_ NAME.
 	 * Within this, the return value, if any, is first. Next are the parameter descriptions in call order.
-	 * The columns descriptions follow in columns number order.
+	 * The column descriptions follow in column number order.
 	 *
 	 * 1.  FUNCTION_CAT String => function catalog (may be null)
 	 * 2.  FUNCTION_SCHEM String => function schema (may be null)
 	 * 3.  FUNCTION_NAME String => function name. This is the name used to invoke the function
-	 * 4.   COLUMN_NAME String => columns/parameter name
-	 * 5.   COLUMN_TYPE Short => kind of columns/parameter:
+	 * 4.   COLUMN_NAME String => column/parameter name
+	 * 5.   COLUMN_TYPE Short => kind of column/parameter:
 	 *         functionColumnUnknown - nobody knows
 	 *         functionColumnIn - IN parameter
 	 *         functionColumnInOut - INOUT parameter
 	 *         functionColumnOut - OUT parameter
 	 *         functionColumnReturn - function return value
-	 *         functionColumnResult - Indicates that the parameter or columns is a columns in the ResultSet
+	 *         functionColumnResult - Indicates that the parameter or column is a column in the ResultSet
 	 * 6.   DATA_TYPE int => SQL type from java.sql.Types
 	 * 7.   TYPE_NAME String => SQL type name, for a UDT type the type name is fully qualified
 	 * 8.   PRECISION int => precision
@@ -3926,14 +3923,14 @@ public class MonetDatabaseMetaData exten
 	 *         functionNoNulls - does not allow NULL values
 	 *         functionNullable - allows NULL values
 	 *         functionNullableUnknown - nullability unknown
-	 * 13.  REMARKS String => comment describing columns/parameter
+	 * 13.  REMARKS String => comment describing column/parameter
 	 * 14.  CHAR_OCTET_LENGTH int => the maximum length of binary and character based parameters or columns. For any other datatype the returned value is a NULL
 	 * 15.  ORDINAL_POSITION int => the ordinal position, starting from 1, for the input and output parameters.
-	 *	   A value of 0 is returned if this row describes the function's return value. For result set columns, it is the ordinal position of the columns in the result set starting from 1.
-	 * 16.  IS_NULLABLE String => ISO rules are used to determine the nullability for a parameter or columns.
-	 *         YES --- if the parameter or columns can include NULLs
-	 *         NO --- if the parameter or columns cannot include NULLs
-	 *         empty string --- if the nullability for the parameter or columns is unknown
+	 *	   A value of 0 is returned if this row describes the function's return value. For result set columns, it is the ordinal position of the column in the result set starting from 1.
+	 * 16.  IS_NULLABLE String => ISO rules are used to determine the nullability for a parameter or column.
+	 *         YES --- if the parameter or column can include NULLs
+	 *         NO --- if the parameter or column cannot include NULLs
+	 *         empty string --- if the nullability for the parameter or column is unknown
 	 * 17.  SPECIFIC_NAME String => the name which uniquely identifies this function within its schema.
 	 *	  This is a user specified, or DBMS generated, name that may be different then the FUNCTION_NAME for example with overload functions
 	 *
@@ -3948,9 +3945,9 @@ public class MonetDatabaseMetaData exten
 	 * @param functionNamePattern a procedure name pattern; must match the
 	 *        function name as it is stored in the database
 	 * @param columnNamePattern a parameter name pattern; must match the
-	 *        parameter or columns name as it is stored in the database
+	 *        parameter or column name as it is stored in the database
 	 * @return ResultSet - each row describes a user function parameter,
-	 *         columns or return type
+	 *         column or return type
 	 * @throws SQLException - if a database access error occurs
 	 */
 	@Override
@@ -4024,32 +4021,32 @@ public class MonetDatabaseMetaData exten
 	 * necessarily be able to be modified.
 	 * If there are no pseudo or hidden columns, an empty ResultSet is returned.
 	 *
-	 * Only columns descriptions matching the catalog, schema, table and columns name criteria are returned.
+	 * Only column descriptions matching the catalog, schema, table and column name criteria are returned.
 	 * They are ordered by TABLE_CAT,TABLE_SCHEM, TABLE_NAME and COLUMN_NAME.
 	 *
-	 * Each columns description has the following columns:
+	 * Each column description has the following columns:
 	 *
 	 *  1. TABLE_CAT String => table catalog (may be null)
 	 *  2. TABLE_SCHEM String => table schema (may be null)
 	 *  3. TABLE_NAME String => table name
-	 *  4. COLUMN_NAME String => columns name
+	 *  4. COLUMN_NAME String => column name
 	 *  5. DATA_TYPE int => SQL type from java.sql.Types
-	 *  6. COLUMN_SIZE int => columns size.
+	 *  6. COLUMN_SIZE int => column size.
 	 *  7. DECIMAL_DIGITS int => the number of fractional digits. Null is returned for data types where DECIMAL_DIGITS is not applicable.
 	 *  8. NUM_PREC_RADIX int => Radix (typically either 10 or 2)
-	 *  9. COLUMN_USAGE String => The allowed usage for the columns. The value returned will correspond to the enum name returned by PseudoColumnUsage.name()
-	 * 10. REMARKS String => comment describing columns (may be null)
-	 * 11. CHAR_OCTET_LENGTH int => for char types the maximum number of bytes in the columns
-	 * 12. IS_NULLABLE String => ISO rules are used to determine the nullability for a columns.
-	 *         YES --- if the columns can include NULLs
-	 *         NO --- if the columns cannot include NULLs
-	 *         empty string --- if the nullability for the columns is unknown
+	 *  9. COLUMN_USAGE String => The allowed usage for the column. The value returned will correspond to the enum name returned by PseudoColumnUsage.name()
+	 * 10. REMARKS String => comment describing column (may be null)
+	 * 11. CHAR_OCTET_LENGTH int => for char types the maximum number of bytes in the column
+	 * 12. IS_NULLABLE String => ISO rules are used to determine the nullability for a column.
+	 *         YES --- if the column can include NULLs
+	 *         NO --- if the column cannot include NULLs
+	 *         empty string --- if the nullability for the column is unknown
 	 *
 	 * @param catalog a catalog name
 	 * @param schemaPattern a schema name pattern
 	 * @param tableNamePattern a table name pattern
-	 * @param columnNamePattern a columns name pattern
-	 * @return ResultSet where each row is a columns description
+	 * @param columnNamePattern a column name pattern
+	 * @return ResultSet where each row is a column description
 	 * @throws SQLException if a database access error occurs
 	 */
 	@Override
@@ -4081,9 +4078,9 @@ public class MonetDatabaseMetaData exten
 
 	/**
 	 * Retrieves whether a generated key will always be returned if the
-	 * columns name(s) or index(es) specified for the auto generated key
-	 * columns(s) are valid and the statement succeeds.  The key that is
-	 * returned may or may not be based on the columns(s) for the auto
+	 * column name(s) or index(es) specified for the auto generated key
+	 * column(s) are valid and the statement succeeds.  The key that is
+	 * returned may or may not be based on the column(s) for the auto
 	 * generated key.
 	 *
 	 * @return true if so, false otherwise
--- a/src/main/java/nl/cwi/monetdb/jdbc/MonetPreparedStatement.java
+++ b/src/main/java/nl/cwi/monetdb/jdbc/MonetPreparedStatement.java
@@ -158,7 +158,7 @@ public class MonetPreparedStatement
 				continue;
 			schema[i] = rs.getString("schema");
 			table[i] = rs.getString("table");
-			column[i] = rs.getString("columns");
+			column[i] = rs.getString("column");
 		}
 		rs.close();
 
@@ -197,7 +197,7 @@ public class MonetPreparedStatement
 		scale = null;
 		schema = null;
 		table = null;
-		columns = null;
+		column = null;
 		values = null;
 		id = -1;
 		size = -1;
@@ -319,7 +319,7 @@ public class MonetPreparedStatement
 
 	/**
 	 * Returns the index (0..size-1) in the backing arrays for the given
-	 * result set columns number or an SQLException when not found
+	 * resultset column number or an SQLException when not found
 	 */
 	private int getColumnIdx(int colnr) throws SQLException {
 		int curcol = 0;
@@ -330,7 +330,7 @@ public class MonetPreparedStatement
 			if (curcol == colnr)
 				return i;
 		}
-		throw new SQLException("No such columns with index: " + colnr, "M1M05");
+		throw new SQLException("No such column with index: " + colnr, "M1M05");
 	}
 	/**
 	 * Returns the index (0..size-1) in the backing arrays for the given
@@ -390,17 +390,17 @@ public class MonetPreparedStatement
 			}
 
 			/**
-			 * Indicates whether the designated columns is automatically numbered.
+			 * Indicates whether the designated column is automatically numbered.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
+			 * @param column the first column is 1, the second is 2, ...
 			 * @return true if so; false otherwise
 			 * @throws SQLException if a database access error occurs
 			 */
 			@Override
 			public boolean isAutoIncrement(int column) throws SQLException {
 				/* TODO: in MonetDB only numeric (int, decimal) columns could be autoincrement/serial
-				 * This however requires an expensive dbmd.getColumns(null, schema, table, columns)
-				 * query call to pull the IS_AUTOINCREMENT value for this columns.
+				 * This however requires an expensive dbmd.getColumns(null, schema, table, column)
+				 * query call to pull the IS_AUTOINCREMENT value for this column.
 				 * See also ResultSetMetaData.isAutoIncrement()
 				 */
 				// For now we simply allways return false.
@@ -408,10 +408,10 @@ public class MonetPreparedStatement
 			}
 
 			/**
-			 * Indicates whether a columns's case matters.
+			 * Indicates whether a column's case matters.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
-			 * @return false
+			 * @param column the first column is 1, the second is 2, ...
+			 * @return if the column is case sensitive
 			 */
 			@Override
 			public boolean isCaseSensitive(int column) throws SQLException {
@@ -435,12 +435,12 @@ public class MonetPreparedStatement
 			}
 
 			/**
-			 * Indicates whether the designated columns can be used in a
+			 * Indicates whether the designated column can be used in a
 			 * where clause.
 			 *
 			 * Returning true for all here, even for CLOB, BLOB.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
+			 * @param column the first column is 1, the second is 2, ...
 			 * @return true
 			 */
 			@Override
@@ -449,13 +449,13 @@ public class MonetPreparedStatement
 			}
 
 			/**
-			 * Indicates whether the designated columns is a cash value.
+			 * Indicates whether the designated column is a cash value.
 			 * From the MonetDB database perspective it is by definition
 			 * unknown whether the value is a currency, because there are
 			 * no currency datatypes such as MONEY.  With this knowledge
 			 * we can always return false here.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
+			 * @param column the first column is 1, the second is 2, ...
 			 * @return false
 			 */
 			@Override
@@ -464,11 +464,11 @@ public class MonetPreparedStatement
 			}
 			
 			/**
-			 * Indicates whether values in the designated columns are signed
+			 * Indicates whether values in the designated column are signed
 			 * numbers.
 			 * Within MonetDB all numeric types (except oid and ptr) are signed.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
+			 * @param column the first column is 1, the second is 2, ...
 			 * @return true if so; false otherwise
 			 */
 			@Override
@@ -503,13 +503,13 @@ public class MonetPreparedStatement
 			}
 
 			/**
-			 * Indicates the designated columns's normal maximum width in
+			 * Indicates the designated column's normal maximum width in
 			 * characters.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
+			 * @param column the first column is 1, the second is 2, ...
 			 * @return the normal maximum number of characters allowed as the
-			 *         width of the designated columns
-			 * @throws SQLException if there is no such columns
+			 *         width of the designated column
+			 * @throws SQLException if there is no such column
 			 */
 			@Override
 			public int getColumnDisplaySize(int column) throws SQLException {
@@ -521,9 +521,9 @@ public class MonetPreparedStatement
 			}
 
 			/**
-			 * Get the designated columns's table's schema.
+			 * Get the designated column's table's schema.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
+			 * @param column the first column is 1, the second is 2, ...
 			 * @return schema name or "" if not applicable
 			 * @throws SQLException if a database access error occurs
 			 */
@@ -537,9 +537,9 @@ public class MonetPreparedStatement
 			}
 
 			/**
-			 * Gets the designated columns's table name.
+			 * Gets the designated column's table name.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
+			 * @param column the first column is 1, the second is 2, ...
 			 * @return table name or "" if not applicable
 			 */
 			@Override
@@ -552,12 +552,12 @@ public class MonetPreparedStatement
 			}
 
 			/**
-			 * Get the designated columns's number of decimal digits.
+			 * Get the designated column's number of decimal digits.
 			 * This method is currently very expensive as it needs to
 			 * retrieve the information from the database using an SQL
 			 * query.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
+			 * @param column the first column is 1, the second is 2, ...
 			 * @return precision
 			 * @throws SQLException if a database access error occurs
 			 */
@@ -571,12 +571,12 @@ public class MonetPreparedStatement
 			}
 
 			/**
-			 * Gets the designated columns's number of digits to right of
+			 * Gets the designated column's number of digits to right of
 			 * the decimal point.  This method is currently very
 			 * expensive as it needs to retrieve the information from
 			 * the database using an SQL query.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
+			 * @param column the first column is 1, the second is 2, ...
 			 * @return scale
 			 * @throws SQLException if a database access error occurs
 			 */
@@ -591,11 +591,11 @@ public class MonetPreparedStatement
 
 			/**
 			 * Indicates the nullability of values in the designated
-			 * columns.  This method is currently very expensive as it
+			 * column.  This method is currently very expensive as it
 			 * needs to retrieve the information from the database using
 			 * an SQL query.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
+			 * @param column the first column is 1, the second is 2, ...
 			 * @return nullability
 			 * @throws SQLException if a database access error occurs
 			 */
@@ -605,12 +605,12 @@ public class MonetPreparedStatement
 			}
 
 			/**
-			 * Gets the designated columns's table's catalog name.
+			 * Gets the designated column's table's catalog name.
 			 * MonetDB does not support the catalog naming concept as in: catalog.schema.table naming scheme
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
+			 * @param column the first column is 1, the second is 2, ...
 			 * @return the name of the catalog for the table in which the given
-			 *         columns appears or "" if not applicable
+			 *         column appears or "" if not applicable
 			 */
 			@Override
 			public String getCatalogName(int column) throws SQLException {
@@ -618,11 +618,11 @@ public class MonetPreparedStatement
 			}
 
 			/**
-			 * Indicates whether the designated columns is definitely not
+			 * Indicates whether the designated column is definitely not
 			 * writable.  MonetDB does not support cursor updates, so
 			 * nothing is writable.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
+			 * @param column the first column is 1, the second is 2, ...
 			 * @return true if so; false otherwise
 			 */
 			@Override
@@ -632,9 +632,9 @@ public class MonetPreparedStatement
 
 			/**
 			 * Indicates whether it is possible for a write on the
-			 * designated columns to succeed.
+			 * designated column to succeed.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
+			 * @param column the first column is 1, the second is 2, ...
 			 * @return true if so; false otherwise
 			 */
 			@Override
@@ -643,10 +643,10 @@ public class MonetPreparedStatement
 			}
 
 			/**
-			 * Indicates whether a write on the designated columns will
+			 * Indicates whether a write on the designated column will
 			 * definitely succeed.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
+			 * @param column the first column is 1, the second is 2, ...
 			 * @return true if so; false otherwise
 			 */
 			@Override
@@ -658,16 +658,16 @@ public class MonetPreparedStatement
 			 * Returns the fully-qualified name of the Java class whose
 			 * instances are manufactured if the method
 			 * ResultSet.getObject is called to retrieve a value from
-			 * the columns.  ResultSet.getObject may return a subclass of
+			 * the column.  ResultSet.getObject may return a subclass of
 			 * the class returned by this method.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
+			 * @param column the first column is 1, the second is 2, ...
 			 * @return the fully-qualified name of the class in the Java
 			 *         programming language that would be used by the method
 			 *         ResultSet.getObject to retrieve the value in the
-			 *         specified columns. This is the class name used for custom
+			 *         specified column. This is the class name used for custom
 			 *         mapping.
-			 * @throws SQLException if there is no such columns
+			 * @throws SQLException if there is no such column
 			 */
 			@Override
 			public String getColumnClassName(int column) throws SQLException {
@@ -675,13 +675,13 @@ public class MonetPreparedStatement
 			}
 
 			/**
-			 * Gets the designated columns's suggested title for use in
+			 * Gets the designated column's suggested title for use in
 			 * printouts and displays. This is currently equal to
 			 * getColumnName().
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
-			 * @return the suggested columns title
-			 * @throws SQLException if there is no such columns
+			 * @param column the first column is 1, the second is 2, ...
+			 * @return the suggested column title
+			 * @throws SQLException if there is no such column
 			 */
 			@Override
 			public String getColumnLabel(int column) throws SQLException {
@@ -689,11 +689,11 @@ public class MonetPreparedStatement
 			}
 
 			/**
-			 * Gets the designated columns's name
+			 * Gets the designated column's name
 			 *
-			 * @param colnr the first columns is 1, the second is 2, ...
-			 * @return the columns name
-			 * @throws SQLException if there is no such columns
+			 * @param colnr the first column is 1, the second is 2, ...
+			 * @return the column name
+			 * @throws SQLException if there is no such column
 			 */
 			@Override
 			public String getColumnName(int colnr) throws SQLException {
@@ -705,11 +705,11 @@ public class MonetPreparedStatement
 			}
 
 			/**
-			 * Retrieves the designated columns's SQL type.
+			 * Retrieves the designated column's SQL type.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
+			 * @param column the first column is 1, the second is 2, ...
 			 * @return SQL type from java.sql.Types
-			 * @throws SQLException if there is no such columns
+			 * @throws SQLException if there is no such column
 			 */
 			@Override
 			public int getColumnType(int column) throws SQLException {
@@ -721,13 +721,13 @@ public class MonetPreparedStatement
 			}
 
 			/**
-			 * Retrieves the designated columns's database-specific type name.
+			 * Retrieves the designated column's database-specific type name.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
-			 * @return type name used by the database. If the columns type is a
+			 * @param column the first column is 1, the second is 2, ...
+			 * @return type name used by the database. If the column type is a
 			 *         user-defined type, then a fully-qualified type name is
 			 *         returned.
-			 * @throws SQLException if there is no such columns
+			 * @throws SQLException if there is no such column
 			 */
 			@Override
 			public String getColumnTypeName(int column) throws SQLException {
@@ -1637,7 +1637,7 @@ public class MonetPreparedStatement
 	@Override
 	public void setNull(int parameterIndex, int sqlType) throws SQLException {
 		// we discard the given type here, the backend converts the
-		// value NULL to whatever it needs for the columns
+		// value NULL to whatever it needs for the column
 		setValue(parameterIndex, "NULL");
 	}
 
@@ -1936,7 +1936,7 @@ public class MonetPreparedStatement
 					throw new SQLException("Conversion not allowed", "M1M05");
 			}
 		} else if (x instanceof Boolean) {
-			boolean val = ((Boolean)x).booleanValue();
+			boolean val = (Boolean) x;
 			switch (targetSqlType) {
 				case Types.TINYINT:
 					setByte(parameterIndex, (byte)(val ? 1 : 0));
@@ -2026,7 +2026,7 @@ public class MonetPreparedStatement
 					} else if (x instanceof java.util.Date) {
 						setDate(parameterIndex, new java.sql.Date(
 									((java.util.Date)x).getTime()));
-					} else if (x instanceof Calendar) {
+					} else { //Calendar
 						setDate(parameterIndex, new java.sql.Date(
 									((Calendar)x).getTimeInMillis()));
 					}
@@ -2041,8 +2041,8 @@ public class MonetPreparedStatement
 					} else if (x instanceof java.util.Date) {
 						setTime(parameterIndex, new java.sql.Time(
 									((java.util.Date)x).getTime()));
-					} else if (x instanceof Calendar) {
-						setTime(parameterIndex, new java.sql.Time(
+					} else { //Calendar
+						setTime(parameterIndex, new Time(
 									((Calendar)x).getTimeInMillis()));
 					}
 				break;
@@ -2056,8 +2056,8 @@ public class MonetPreparedStatement
 					} else if (x instanceof java.util.Date) {
 						setTimestamp(parameterIndex, new java.sql.Timestamp(
 									((java.util.Date)x).getTime()));
-					} else if (x instanceof Calendar) {
-						setTimestamp(parameterIndex, new java.sql.Timestamp(
+					} else { //Calendar
+						setTimestamp(parameterIndex, new Timestamp(
 									((Calendar)x).getTimeInMillis()));
 					}
 				break;
@@ -2079,8 +2079,8 @@ public class MonetPreparedStatement
 			setURL(parameterIndex, (java.net.URL)x);
 		} else if (x instanceof RowId) {
 			setRowId(parameterIndex, (RowId)x);
-		} else if (x instanceof NClob) {
-			throw newSQLFeatureNotSupportedException("setObject() with object of type NClob");
+		/*} else if (x instanceof NClob) { NClob is a subclass od Clob
+			throw newSQLFeatureNotSupportedException("setObject() with object of type NClob");*/
 		} else if (x instanceof SQLXML) {
 			throw newSQLFeatureNotSupportedException("setObject() with object of type SQLXML");
 		} else if (x instanceof SQLData) { // not in JDBC4.1???
@@ -2534,8 +2534,8 @@ public class MonetPreparedStatement
 
 	/**
 	 * Transforms the prepare query into a simple SQL query by replacing
-	 * the ?'s with the given columns contents.
-	 * Mind that the JDBC specs allow `reuse' of a value for a columns over
+	 * the ?'s with the given column contents.
+	 * Mind that the JDBC specs allow `reuse' of a value for a column over
 	 * multiple executes.
 	 *
 	 * @return the simple SQL string for the prepare query
--- a/src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java
+++ b/src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java
@@ -145,8 +145,8 @@ public class MonetResultSet extends Mone
 	 * DO NOT USE THIS CONSTRUCTOR IF YOU ARE NOT EXTENDING THIS OBJECT!
 	 *
 	 * @param statement the statement which created this ResultSet
-	 * @param columns the columns names
-	 * @param types the columns types
+	 * @param columns the column names
+	 * @param types the column types
 	 * @param results the number of rows in the ResultSet
 	 * @throws IllegalArgumentException if communicating with monet failed
 	 */
@@ -314,13 +314,13 @@ public class MonetResultSet extends Mone
 
 	// Chapter 14.2.3 from Sun JDBC 3.0 specification
 	/**
-	 * Maps the given ResultSet columns name to its ResultSet columns index.
-	 * QueryResultSetColumn names supplied to getter methods are case insensitive. If a select
-	 * list contains the same columns more than once, the first instance of the
-	 * columns will be returned.
+	 * Maps the given ResultSet column name to its ResultSet column index.
+	 * Column names supplied to getter methods are case insensitive. If a select
+	 * list contains the same column more than once, the first instance of the
+	 * column will be returned.
 	 *
-	 * @param columnName the name of the columns
-	 * @return the columns index of the given columns name
+	 * @param columnName the name of the column
+	 * @return the column index of the given column name
 	 * @throws SQLException if the ResultSet object does not contain columnName
 	 */
 	@Override
@@ -337,7 +337,7 @@ public class MonetResultSet extends Mone
 					return i + 1;
 			}
 		}
-		throw new SQLException("No such columns name: " + columnName, "M1M05");
+		throw new SQLException("No such column name: " + columnName, "M1M05");
 	}
 
 	/**
@@ -384,19 +384,19 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row
+	 * Retrieves the value of the designated column in the current row
 	 * of this ResultSet object as a stream of uninterpreted bytes. The
 	 * value can then be read in chunks from the stream. This method is
 	 * particularly suitable for retrieving large LONGVARBINARY values.
 	 * <br/><br/>
 	 * Note: All the data in the returned stream must be read prior to
-	 * getting the value of any other columns. The next call to a getter
+	 * getting the value of any other column. The next call to a getter
 	 * method implicitly closes the stream. Also, a stream may return 0
 	 * when the method InputStream.available  is called whether there is
 	 * data available or not.
 	 *
-	 * @param columnIndex the first columns is 1, the second is 2, ...
-	 * @return a Java input stream that delivers the database columns
+	 * @param columnIndex the first column is 1, the second is 2, ...
+	 * @return a Java input stream that delivers the database column
 	 * value as a stream of uninterpreted bytes; if the value is SQL
 	 * NULL, the value returned is null
 	 * @throws SQLException if the columnIndex is not valid; if a
@@ -427,21 +427,21 @@ public class MonetResultSet extends Mone
 	}
 	
 	/**
-	 * Retrieves the value of the designated columns in the current row
+	 * Retrieves the value of the designated column in the current row
 	 * of this ResultSet object as a stream of uninterpreted bytes. The
 	 * value can then be read in chunks from the stream. This method is
 	 * particularly suitable for retrieving large LONGVARBINARY  values.
 	 * <br/><br/>
 	 * Note: All the data in the returned stream must be read prior to
-	 * getting the value of any other columns. The next call to a getter
+	 * getting the value of any other column. The next call to a getter
 	 * method implicitly closes the stream. Also, a stream may return 0
 	 * when the method available  is called whether there is data
 	 * available or not.
 	 *
-	 * @param columnName the label for the columns specified with
+	 * @param columnName the label for the column specified with
 	 * the SQL AS clause. If the SQL AS clause was not specified, then
-	 * the label is the name of the columns
-	 * @return a Java input stream that delivers the database columns
+	 * the label is the name of the column
+	 * @return a Java input stream that delivers the database column
 	 * value as a stream of uninterpreted bytes; if the value is SQL
 	 * NULL, the result is null
 	 * @throws SQLException if the columnLabel is not valid; if a
@@ -454,11 +454,11 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row
+	 * Retrieves the value of the designated column in the current row
 	 * of this ResultSet object as a java.io.Reader object.
 	 *
-	 * @param columnIndex the first columns is 1, the second is 2, ...
-	 * @return a java.io.Reader object that contains the columns value;
+	 * @param columnIndex the first column is 1, the second is 2, ...
+	 * @return a java.io.Reader object that contains the column value;
 	 *         if the value is SQL NULL, the value returned is null in
 	 *         the Java programming language.
 	 * @throws SQLException if a database access error occurs
@@ -479,11 +479,11 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row
+	 * Retrieves the value of the designated column in the current row
 	 * of this ResultSet object as a java.io.Reader object.
 	 *
-	 * @param columnName the name of the columns
-	 * @return a java.io.Reader object that contains the columns value;
+	 * @param columnName the name of the column
+	 * @return a java.io.Reader object that contains the column value;
 	 *         if the value is SQL NULL, the value returned is null in
 	 *         the Java programming language.
 	 * @throws SQLException if a database access error occurs
@@ -494,13 +494,13 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row
+	 * Retrieves the value of the designated column in the current row
 	 * of this ResultSet object as a java.io.Reader object. It is
 	 * intended for use when accessing NCHAR,NVARCHAR and LONGNVARCHAR
 	 * columns.
 	 *
-	 * @param columnIndex the first columns is 1, the second is 2, ...
-	 * @return a java.io.Reader object that contains the columns value;
+	 * @param columnIndex the first column is 1, the second is 2, ...
+	 * @return a java.io.Reader object that contains the column value;
 	 *         if the value is SQL NULL, the value returned is null in
 	 *         the Java programming language.
 	 * @throws SQLException if a database access error occurs
@@ -513,13 +513,13 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row
+	 * Retrieves the value of the designated column in the current row
 	 * of this ResultSet object as a java.io.Reader object. It is
 	 * intended for use when accessing NCHAR,NVARCHAR and LONGNVARCHAR
 	 * columns.
 	 *
-	 * @param columnName the name of the columns
-	 * @return a java.io.Reader object that contains the columns value;
+	 * @param columnName the name of the column
+	 * @return a java.io.Reader object that contains the column value;
 	 *         if the value is SQL NULL, the value returned is null in
 	 *         the Java programming language.
 	 * @throws SQLException if a database access error occurs
@@ -532,13 +532,13 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row
+	 * Retrieves the value of the designated column in the current row
 	 * of this ResultSet object as a Blob object in the Java programming
 	 * language.
 	 *
-	 * @param columnIndex the first columns is 1, the second is 2, ...
+	 * @param columnIndex the first column is 1, the second is 2, ...
 	 * @return a Blob object representing the SQL BLOB value in the
-	 *         specified columns
+	 *         specified column
 	 * @throws SQLException if a database access error occurs
 	 */
 	@Override
@@ -557,14 +557,14 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row
+	 * Retrieves the value of the designated column in the current row
 	 * of this ResultSet object as a Blob object in the Java programming
 	 * language.
 	 *
-	 * @param colName the name of the columns from which to retrieve
+	 * @param colName the name of the column from which to retrieve
 	 *        the value
 	 * @return a Blob object representing the SQL BLOB value in the
-	 *         specified columns
+	 *         specified column
 	 * @throws SQLException if a database access error occurs
 	 */
 	@Override
@@ -573,13 +573,13 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row
+	 * Retrieves the value of the designated column in the current row
 	 * of this ResultSet object as a Clob object in the
 	 * Java programming language.
 	 *
-	 * @param columnIndex the first columns is 1, the second is 2, ...
+	 * @param columnIndex the first column is 1, the second is 2, ...
 	 * @return a Clob object representing the SQL CLOB value in the
-	 *         specified columns
+	 *         specified column
 	 * @throws SQLException if a database access error occurs
 	 */
 	@Override
@@ -598,14 +598,14 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row
+	 * Retrieves the value of the designated column in the current row
 	 * of this ResultSet object as a Clob object in the
 	 * Java programming language.
 	 *
-	 * @param colName the name of the columns from which to retrieve
+	 * @param colName the name of the column from which to retrieve
 	 *        the value
 	 * @return a Clob object representing the SQL CLOB value in the
-	 *         specified columns
+	 *         specified column
 	 * @throws SQLException if a database access error occurs
 	 */
 	@Override
@@ -614,13 +614,13 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row
+	 * Retrieves the value of the designated column in the current row
 	 * of this ResultSet object as a NClob object in the
 	 * Java programming language.
 	 *
-	 * @param i the first columns is 1, the second is 2, ...
+	 * @param i the first column is 1, the second is 2, ...
 	 * @return a NClob object representing the SQL NCLOB value in the
-	 *         specified columns
+	 *         specified column
 	 * @throws SQLException if a database access error occurs
 	 * @throws SQLFeatureNotSupportedException the JDBC driver does
 	 *         not support this method
@@ -631,14 +631,14 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row
+	 * Retrieves the value of the designated column in the current row
 	 * of this ResultSet object as a NClob object in the
 	 * Java programming language.
 	 *
-	 * @param colName the name of the columns from which to retrieve
+	 * @param colName the name of the column from which to retrieve
 	 *        the value
 	 * @return a NClob object representing the SQL NCLOB value in the
-	 *         specified columns
+	 *         specified column
 	 * @throws SQLException if a database access error occurs
 	 * @throws SQLFeatureNotSupportedException the JDBC driver does
 	 *         not support this method
@@ -649,11 +649,11 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as a java.math.BigDecimal with full precision.
 	 *
-	 * @param columnIndex the first columns is 1, the second is 2, ...
-	 * @return the columns value (full precision); if the value is SQL NULL,
+	 * @param columnIndex the first column is 1, the second is 2, ...
+	 * @return the column value (full precision); if the value is SQL NULL,
 	 *         the value returned is null in the Java programming language.
 	 * @throws SQLException if a database access error occurs
 	 */
@@ -675,12 +675,12 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as a java.math.BigDecimal with full precision.
 	 *
-	 * @param columnIndex the first columns is 1, the second is 2, ...
+	 * @param columnIndex the first column is 1, the second is 2, ...
 	 * @param scale the number of digits to the right of the decimal point
-	 * @return the columns value (full precision); if the value is SQL NULL,
+	 * @return the column value (full precision); if the value is SQL NULL,
 	 *         the value returned is null in the Java programming language.
 	 * @throws SQLException if a database access error occurs
 	 */
@@ -708,11 +708,11 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as a java.math.BigDecimal with full precision.
 	 *
-	 * @param columnName the SQL name of the columns
-	 * @return the columns value (full precision); if the value is SQL NULL,
+	 * @param columnName the SQL name of the column
+	 * @return the column value (full precision); if the value is SQL NULL,
 	 *         the value returned is null in the Java programming language.
 	 * @throws SQLException if a database access error occurs
 	 */
@@ -722,12 +722,12 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as a java.math.BigDecimal with full precision.
 	 *
-	 * @param columnName the SQL name of the columns
+	 * @param columnName the SQL name of the column
 	 * @param scale the number of digits to the right of the decimal point
-	 * @return the columns value (full precision); if the value is SQL NULL,
+	 * @return the column value (full precision); if the value is SQL NULL,
 	 *         the value returned is null in the Java programming language.
 	 * @throws SQLException if a database access error occurs
 	 */
@@ -741,13 +741,13 @@ public class MonetResultSet extends Mone
 
 	// See Sun JDBC Specification 3.0 Table B-6
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as a boolean in the Java programming language.
 	 *
-	 * @param columnIndex the first columns is 1, the second is 2, ...
-	 * @return the columns value; if the value is SQL NULL, the value returned
+	 * @param columnIndex the first column is 1, the second is 2, ...
+	 * @return the column value; if the value is SQL NULL, the value returned
 	 *         is false
-	 * @throws SQLException if there is no such columns
+	 * @throws SQLException if there is no such column
 	 */
 	@Override
 	public boolean getBoolean(int columnIndex) throws SQLException {
@@ -797,11 +797,11 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as a boolean in the Java programming language.
 	 *
-	 * @param columnName the SQL name of the columns
-	 * @return the columns value; if the value is SQL NULL, the value returned
+	 * @param columnName the SQL name of the column
+	 * @return the column value; if the value is SQL NULL, the value returned
 	 *         is false
 	 * @throws SQLException if the ResultSet object does not contain columnName
 	 */
@@ -811,11 +811,11 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as a byte in the Java programming language.
 	 *
-	 * @param columnIndex the first columns is 1, the second is 2, ...
-	 * @return the columns value; if the value is SQL NULL, the value returned
+	 * @param columnIndex the first column is 1, the second is 2, ...
+	 * @return the column value; if the value is SQL NULL, the value returned
 	 *         is 0
 	 * @throws SQLException if a database access error occurs
 	 */
@@ -837,11 +837,11 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as a byte in the Java programming language.
 	 *
-	 * @param columnName the SQL name of the columns
-	 * @return the columns value; if the value is SQL NULL, the value returned
+	 * @param columnName the SQL name of the column
+	 * @return the column value; if the value is SQL NULL, the value returned
 	 *         is 0
 	 * @throws SQLException if a database access error occurs
 	 */
@@ -851,12 +851,12 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as a byte array in the Java programming language. The
 	 * bytes represent the raw values returned by the driver.
 	 *
-	 * @param columnIndex the first columns is 1, the second is 2, ...
-	 * @return the columns value; if the value is SQL NULL, the value returned
+	 * @param columnIndex the first column is 1, the second is 2, ...
+	 * @return the column value; if the value is SQL NULL, the value returned
 	 *         is null
 	 * @throws SQLException if a database access error occurs
 	 */
@@ -896,7 +896,7 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as a byte array in the Java programming language. The
 	 * bytes represent the raw values returned by the driver.
 	 *
@@ -905,8 +905,8 @@ public class MonetResultSet extends Mone
 	 *       an encoding into a sequence of bytes using the platform's default
 	 *       charset.
 	 *
-	 * @param columnName the SQL name of the columns
-	 * @return the columns value; if the value is SQL NULL, the value returned
+	 * @param columnName the SQL name of the column
+	 * @return the column value; if the value is SQL NULL, the value returned
 	 *         is null
 	 * @throws SQLException if a database access error occurs
 	 */
@@ -958,13 +958,13 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as a double in the Java programming language.
 	 *
-	 * @param columnIndex the first columns is 1, the second is 2, ...
-	 * @return the columns value; if the value is SQL NULL, the value returned
+	 * @param columnIndex the first column is 1, the second is 2, ...
+	 * @return the column value; if the value is SQL NULL, the value returned
 	 *         is 0
-	 * @throws SQLException if there is no such columns
+	 * @throws SQLException if there is no such column
 	 */
 	@Override
 	public double getDouble(int columnIndex) throws SQLException {
@@ -984,11 +984,11 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as a double in the Java programming language.
 	 *
-	 * @param columnName the SQL name of the columns
-	 * @return the columns value; if the value is SQL NULL, the value returned
+	 * @param columnName the SQL name of the column
+	 * @return the column value; if the value is SQL NULL, the value returned
 	 *         is 0
 	 * @throws SQLException if the ResultSet object does not contain columnName
 	 */
@@ -1078,13 +1078,13 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as a float in the Java programming language.
 	 *
-	 * @param columnIndex the first columns is 1, the second is 2, ...
-	 * @return the columns value; if the value is SQL NULL, the value returned
+	 * @param columnIndex the first column is 1, the second is 2, ...
+	 * @return the column value; if the value is SQL NULL, the value returned
 	 *         is 0
-	 * @throws SQLException if there is no such columns
+	 * @throws SQLException if there is no such column
 	 */
 	@Override
 	public float getFloat(int columnIndex) throws SQLException {
@@ -1104,11 +1104,11 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as a float in the Java programming language.
 	 *
-	 * @param columnName the SQL name of the columns
-	 * @return the columns value; if the value is SQL NULL, the value returned is 0
+	 * @param columnName the SQL name of the column
+	 * @return the column value; if the value is SQL NULL, the value returned is 0
 	 * @throws SQLException if the ResultSet object does not contain columnName
 	 */
 	@Override
@@ -1117,12 +1117,12 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as an int in the Java programming language.
 	 *
-	 * @param columnIndex the first columns is 1, the second is 2, ...
-	 * @return the columns value; if the value is SQL NULL, the value returned is 0
-	 * @throws SQLException if there is no such columns
+	 * @param columnIndex the first column is 1, the second is 2, ...
+	 * @return the column value; if the value is SQL NULL, the value returned is 0
+	 * @throws SQLException if there is no such column
 	 */
 	@Override
 	public int getInt(int columnIndex) throws SQLException {
@@ -1156,11 +1156,11 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as an int in the Java programming language.
 	 *
-	 * @param columnName the SQL name of the columns
-	 * @return the columns value; if the value is SQL NULL, the value returned is 0
+	 * @param columnName the SQL name of the column
+	 * @return the column value; if the value is SQL NULL, the value returned is 0
 	 * @throws SQLException if the ResultSet object does not contain columnName
 	 */
 	@Override
@@ -1169,12 +1169,12 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as a long in the Java programming language.
 	 *
-	 * @param columnIndex the first columns is 1, the second is 2, ...
-	 * @return the columns value; if the value is SQL NULL, the value returned is 0
-	 * @throws SQLException if there is no such columns
+	 * @param columnIndex the first column is 1, the second is 2, ...
+	 * @return the column value; if the value is SQL NULL, the value returned is 0
+	 * @throws SQLException if there is no such column
 	 */
 	@Override
 	public long getLong(int columnIndex) throws SQLException {
@@ -1208,11 +1208,11 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as a long in the Java programming language.
 	 *
-	 * @param columnName the SQL name of the columns
-	 * @return the columns value; if the value is SQL NULL, the value returned
+	 * @param columnName the SQL name of the column
+	 * @return the column value; if the value is SQL NULL, the value returned
 	 *         is 0
 	 * @throws SQLException if the ResultSet object does not contain columnName
 	 */
@@ -1245,10 +1245,10 @@ public class MonetResultSet extends Mone
 			private DatabaseMetaData dbmd = null;
 
 			/**
-			 * A private method to fetch the precision, scale, isNullable and isAutoincrement value for a fully qualified columns.
-			 * As md.getColumns() is an expensive method we call it only once per columns
+			 * A private method to fetch the precision, scale, isNullable and isAutoincrement value for a fully qualified column.
+			 * As md.getColumns() is an expensive method we call it only once per column
 			 * and cache the precision, scale, isNullable and isAutoincrement values in the above array chaches.
-			 * Also we only call md.getColumns() when we have a non empty schema name and table name and columns name.
+			 * Also we only call md.getColumns() when we have a non empty schema name and table name and column name.
 			 */
 			private void fetchColumnInfo(int column) throws SQLException
 			{
@@ -1261,7 +1261,7 @@ public class MonetResultSet extends Mone
 				_isNullable[column] = columnNullableUnknown;
 				_isAutoincrement[column] = false;
 
-				// we can only call dbmd.getColumns() when we have a specific schema name and table name and columns name
+				// we can only call dbmd.getColumns() when we have a specific schema name and table name and column name
 				String schName = getSchemaName(column);
 				if (schName != null && !schName.isEmpty()) {
 					String tblName = getTableName(column);
@@ -1308,9 +1308,9 @@ public class MonetResultSet extends Mone
 			}
 
 			/**
-			 * Indicates whether the designated columns is automatically numbered.
+			 * Indicates whether the designated column is automatically numbered.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
+			 * @param column the first column is 1, the second is 2, ...
 			 * @return true if so; false otherwise
 			 * @throws SQLException if a database access error occurs
 			 */
@@ -1327,11 +1327,10 @@ public class MonetResultSet extends Mone
 			}
 
 			/**
-			 * Indicates whether a columns's case matters.
+			 * Indicates whether a column's case matters.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
+			 * @param column the first column is 1, the second is 2, ...
 			 * @return true for all character string columns else false
-			 * @throws SQLException if a database access error occurs
 			 */
 			@Override
 			public boolean isCaseSensitive(int column) throws SQLException {
@@ -1355,16 +1354,16 @@ public class MonetResultSet extends Mone
 			}
 
 			/**
-			 * Indicates whether the designated columns can be used in a
+			 * Indicates whether the designated column can be used in a
 			 * where clause.
 			 * It is unknown to me what kind ot columns they regard to,
 			 * as I think all columns are useable in a where clause.
 			 * Returning true for all here, for the time being.
 			 * Possible thought; maybe they want to know here if it's a
-			 * real columns existing in a table or not...
+			 * real column existing in a table or not...
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
-			 * @return Always true
+			 * @param column the first column is 1, the second is 2, ...
+			 * @return true
 			 */
 			@Override
 			public boolean isSearchable(int column) {
@@ -1372,14 +1371,14 @@ public class MonetResultSet extends Mone
 			}
 
 			/**
-			 * Indicates whether the designated columns is a cash value.
+			 * Indicates whether the designated column is a cash value.
 			 * From the MonetDB database perspective it is by definition
 			 * unknown whether the value is a currency, because there are
 			 * no currency datatypes such as MONEY.  With this knowledge
 			 * we can always return false here.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
-			 * @return Always false
+			 * @param column the first column is 1, the second is 2, ...
+			 * @return false
 			 */
 			@Override
 			public boolean isCurrency(int column) {
@@ -1387,11 +1386,11 @@ public class MonetResultSet extends Mone
 			}
 			
 			/**
-			 * Indicates whether values in the designated columns are signed
+			 * Indicates whether values in the designated column are signed
 			 * numbers.
 			 * Within MonetDB all numeric types (except oid and ptr) are signed.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
+			 * @param column the first column is 1, the second is 2, ...
 			 * @return true if so; false otherwise
 			 */
 			@Override
@@ -1427,13 +1426,13 @@ public class MonetResultSet extends Mone
 			}
 
 			/**
-			 * Indicates the designated columns's normal maximum width in
+			 * Indicates the designated column's normal maximum width in
 			 * characters.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
+			 * @param column the first column is 1, the second is 2, ...
 			 * @return the normal maximum number of characters allowed as the
-			 *         width of the designated columns
-			 * @throws SQLException if there is no such columns
+			 *         width of the designated column
+			 * @throws SQLException if there is no such column
 			 */
 			@Override
 			public int getColumnDisplaySize(int column) throws SQLException {
@@ -1449,9 +1448,9 @@ public class MonetResultSet extends Mone
 			}
 
 			/**
-			 * Get the designated columns's schema name.
+			 * Get the designated column's schema name.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
+			 * @param column the first column is 1, the second is 2, ...
 			 * @return schema name or "" if not applicable
 			 * @throws SQLException if a database access error occurs
 			 */
@@ -1473,9 +1472,9 @@ public class MonetResultSet extends Mone
 			}
 
 			/**
-			 * Gets the designated columns's table name.
+			 * Gets the designated column's table name.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
+			 * @param column the first column is 1, the second is 2, ...
 			 * @return table name or "" if not applicable
 			 */
 			@Override
@@ -1496,12 +1495,12 @@ public class MonetResultSet extends Mone
 			}
 
 			/**
-			 * Get the designated columns's number of decimal digits.
+			 * Get the designated column's number of decimal digits.
 			 * This method is currently very expensive as it needs to
 			 * retrieve the information from the database using an SQL
 			 * query.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
+			 * @param column the first column is 1, the second is 2, ...
 			 * @return precision
 			 * @throws SQLException if a database access error occurs
 			 */
@@ -1570,12 +1569,12 @@ public class MonetResultSet extends Mone
 			}
 
 			/**
-			 * Gets the designated columns's number of digits to right of
+			 * Gets the designated column's number of digits to right of
 			 * the decimal point.  This method is currently very
 			 * expensive as it needs to retrieve the information from
 			 * the database using an SQL query.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
+			 * @param column the first column is 1, the second is 2, ...
 			 * @return scale
 			 * @throws SQLException if a database access error occurs
 			 */
@@ -1593,12 +1592,12 @@ public class MonetResultSet extends Mone
 
 			/**
 			 * Indicates the nullability of values in the designated
-			 * columns.  This method is currently very expensive as it
+			 * column.  This method is currently very expensive as it
 			 * needs to retrieve the information from the database using
 			 * an SQL query.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
-			 * @return the nullability status of the given columns; one of columnNoNulls, columnNullable or columnNullableUnknown
+			 * @param column the first column is 1, the second is 2, ...
+			 * @return the nullability status of the given column; one of columnNoNulls, columnNullable or columnNullableUnknown
 			 * @throws SQLException if a database access error occurs
 			 */
 			@Override
@@ -1614,12 +1613,12 @@ public class MonetResultSet extends Mone
 			}
 
 			/**
-			 * Gets the designated columns's table's catalog name.
+			 * Gets the designated column's table's catalog name.
 			 * MonetDB does not support the catalog naming concept as in: catalog.schema.table naming scheme
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
+			 * @param column the first column is 1, the second is 2, ...
 			 * @return the name of the catalog for the table in which the given
-			 *         columns appears or "" if not applicable
+			 *         column appears or "" if not applicable
 			 */
 			@Override
 			public String getCatalogName(int column) throws SQLException {
@@ -1628,11 +1627,11 @@ public class MonetResultSet extends Mone
 			}
 
 			/**
-			 * Indicates whether the designated columns is definitely not
+			 * Indicates whether the designated column is definitely not
 			 * writable.  MonetDB does not support cursor updates, so
 			 * nothing is writable.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
+			 * @param column the first column is 1, the second is 2, ...
 			 * @return true if so; false otherwise
 			 */
 			@Override
@@ -1642,9 +1641,9 @@ public class MonetResultSet extends Mone
 
 			/**
 			 * Indicates whether it is possible for a write on the
-			 * designated columns to succeed.
+			 * designated column to succeed.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
+			 * @param column the first column is 1, the second is 2, ...
 			 * @return true if so; false otherwise
 			 */
 			@Override
@@ -1653,10 +1652,10 @@ public class MonetResultSet extends Mone
 			}
 
 			/**
-			 * Indicates whether a write on the designated columns will
+			 * Indicates whether a write on the designated column will
 			 * definitely succeed.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
+			 * @param column the first column is 1, the second is 2, ...
 			 * @return true if so; false otherwise
 			 */
 			@Override
@@ -1668,16 +1667,16 @@ public class MonetResultSet extends Mone
 			 * Returns the fully-qualified name of the Java class whose
 			 * instances are manufactured if the method
 			 * ResultSet.getObject is called to retrieve a value from
-			 * the columns.  ResultSet.getObject may return a subclass of
+			 * the column.  ResultSet.getObject may return a subclass of
 			 * the class returned by this method.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
+			 * @param column the first column is 1, the second is 2, ...
 			 * @return the fully-qualified name of the class in the Java
 			 *         programming language that would be used by the method
 			 *         ResultSet.getObject to retrieve the value in the
-			 *         specified columns. This is the class name used for custom
+			 *         specified column. This is the class name used for custom
 			 *         mapping.
-			 * @throws SQLException if there is no such columns
+			 * @throws SQLException if there is no such column
 			 */
 			@Override
 			public String getColumnClassName(int column) throws SQLException {
@@ -1701,20 +1700,20 @@ public class MonetResultSet extends Mone
 					if (type != null) {
 						return type.getName();
 					}
-					throw new SQLException("columns type mapping null: " + MonetDBType, "M0M03");
+					throw new SQLException("column type mapping null: " + MonetDBType, "M0M03");
 				} catch (IndexOutOfBoundsException e) {
 					throw newSQLInvalidColumnIndexException(column);
 				}
 			}
 
 			/**
-			 * Gets the designated columns's suggested title for use in
+			 * Gets the designated column's suggested title for use in
 			 * printouts and displays. This is currently equal to
 			 * getColumnName().
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
-			 * @return the suggested columns title
-			 * @throws SQLException if there is no such columns
+			 * @param column the first column is 1, the second is 2, ...
+			 * @return the suggested column title
+			 * @throws SQLException if there is no such column
 			 */
 			@Override
 			public String getColumnLabel(int column) throws SQLException {
@@ -1722,11 +1721,11 @@ public class MonetResultSet extends Mone
 			}
 
 			/**
-			 * Gets the designated columns's name
+			 * Gets the designated column's name
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
-			 * @return the columns name
-			 * @throws SQLException if there is no such columns
+			 * @param column the first column is 1, the second is 2, ...
+			 * @return the column name
+			 * @throws SQLException if there is no such column
 			 */
 			@Override
 			public String getColumnName(int column) throws SQLException {
@@ -1738,11 +1737,11 @@ public class MonetResultSet extends Mone
 			}
 
 			/**
-			 * Retrieves the designated columns's SQL type.
+			 * Retrieves the designated column's SQL type.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
+			 * @param column the first column is 1, the second is 2, ...
 			 * @return SQL type from java.sql.Types
-			 * @throws SQLException if there is no such columns
+			 * @throws SQLException if there is no such column
 			 */
 			@Override
 			public int getColumnType(int column) throws SQLException {
@@ -1754,13 +1753,13 @@ public class MonetResultSet extends Mone
 			}
 
 			/**
-			 * Retrieves the designated columns's database-specific type name.
+			 * Retrieves the designated column's database-specific type name.
 			 *
-			 * @param column the first columns is 1, the second is 2, ...
-			 * @return type name used by the database. If the columns type is a
+			 * @param column the first column is 1, the second is 2, ...
+			 * @return type name used by the database. If the column type is a
 			 *         user-defined type, then a fully-qualified type name is
 			 *         returned.
-			 * @throws SQLException if there is no such columns
+			 * @throws SQLException if there is no such column
 			 */
 			@Override
 			public String getColumnTypeName(int column) throws SQLException {
@@ -1775,23 +1774,23 @@ public class MonetResultSet extends Mone
 	}	// end of getMetaData()
 
 	/**
-	 * Gets the value of the designated columns in the current row of this
+	 * Gets the value of the designated column in the current row of this
 	 * ResultSet object as an Object in the Java programming language.
 	 *
-	 * This method will return the value of the given columns as a Java object.
+	 * This method will return the value of the given column as a Java object.
 	 * The type of the Java object will be the default Java object type
-	 * corresponding to the columns's SQL type, following the mapping for
+	 * corresponding to the column's SQL type, following the mapping for
 	 * built-in types specified in the JDBC specification. If the value is
 	 * an SQL NULL, the driver returns a Java null.
 	 *
 	 * This method may also be used to read database-specific abstract data
 	 * types. In the JDBC 2.0 API, the behavior of method getObject is extended
-	 * to materialize data of SQL user-defined types. When a columns contains a
+	 * to materialize data of SQL user-defined types. When a column contains a
 	 * structured or distinct value, the behavior of this method is as if it
 	 * were a call to: getObject(columnIndex, this.getStatement().getConnection().getTypeMap()).
 	 *
-	 * @param columnIndex the first columns is 1, the second is 2, ...
-	 * @return a java.lang.Object holding the columns value or null
+	 * @param columnIndex the first column is 1, the second is 2, ...
+	 * @return a java.lang.Object holding the column value or null
 	 * @throws SQLException if a database access error occurs
 	 */
 	@Override
@@ -1899,7 +1898,7 @@ public class MonetResultSet extends Mone
 //					if ("json".equals(MonetDBType)) {
 						// There is no support for JSON in standard java class libraries.
 						// Possibly we could use org.json.simple.JSONObject or other/faster libs
-						// javax.json.JSON is not released yet (see https://json-processing-spec.java.net/)
+						// javax.json.Json is not released yet (see https://json-processing-spec.java.net/)
 						// see also https://github.com/fabienrenaud/java-json-benchmark
 						// Note that it would make our JDBC driver dependent of an external jar
 						// and we don't want that so simply return it as String object
@@ -1928,7 +1927,7 @@ public class MonetResultSet extends Mone
 				return getBytes(columnIndex);
 			case Types.OTHER:
 			default:
-				// When we get here the columns type is a non-standard JDBC SQL type, possibly a User Defined Type.
+				// When we get here the column type is a non-standard JDBC SQL type, possibly a User Defined Type.
 				// Just call getObject(int, Map) for those rare cases.
 				return getObject(columnIndex, this.getStatement().getConnection().getTypeMap());
 		}
@@ -1944,12 +1943,12 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Gets the value of the designated columns in the current row of this
+	 * Gets the value of the designated column in the current row of this
 	 * ResultSet object as an Object in the Java programming language.
 	 *
-	 * This method will return the value of the given columns as a Java object.
+	 * This method will return the value of the given column as a Java object.
 	 * The type of the Java object will be the default Java object type corresponding
-	 * to the columns's SQL type, following the mapping for built-in types specified
+	 * to the column's SQL type, following the mapping for built-in types specified
 	 * in the JDBC specification.
 	 * If the value is an SQL NULL, the driver returns a Java null.
 	 *
@@ -1958,14 +1957,14 @@ public class MonetResultSet extends Mone
 	 * materialize data of SQL user-defined types.
 	 *
 	 * If Connection.getTypeMap does not throw a SQLFeatureNotSupportedException, then
-	 * when a columns contains a structured or distinct value, the behavior of this
+	 * when a column contains a structured or distinct value, the behavior of this
 	 * method is as if it were a call to: getObject(columnIndex,
 	 * this.getStatement().getConnection().getTypeMap()).
 	 * If Connection.getTypeMap does throw a SQLFeatureNotSupportedException, then
 	 * structured values are not supported, and distinct values are mapped to the
 	 * default Java class as determined by the underlying SQL type of the DISTINCT type.
 	 *
-	 * @param columnIndex the first columns is 1, the second is 2, ...
+	 * @param columnIndex the first column is 1, the second is 2, ...
 	 * @param map a java.util.Map object that contains the mapping from SQL
 	 *        type names to classes in the Java programming language
 	 * @return an Object in the Java programming language representing the SQL
@@ -2034,7 +2033,7 @@ public class MonetResultSet extends Mone
 				Constructor<? extends SQLData> ctor =
 					((Class)type).getConstructor();
 				x = ctor.newInstance();
-			} catch (NoSuchMethodException | InstantiationException | IllegalAccessException | SecurityException | InvocationTargetException nsme) {
+			} catch (NoSuchMethodException | InstantiationException | InvocationTargetException | SecurityException | IllegalAccessException nsme) {
 				throw new SQLException(nsme.getMessage(), "M0M27");
 			}
 			final int colnum = columnIndex;
@@ -2183,9 +2182,9 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row
+	 * Retrieves the value of the designated column in the current row
 	 * of this ResultSet object and will convert from the SQL type of
-	 * the columns to the requested Java data type, if the conversion is
+	 * the column to the requested Java data type, if the conversion is
 	 * supported.  If the conversion is not supported or null is
 	 * specified for the type, a SQLException is thrown.
 	 *
@@ -2194,10 +2193,10 @@ public class MonetResultSet extends Mone
 	 * SQL types to a Java type which implements SQLData, or Struct.
 	 * Additional conversions may be supported and are vendor defined.
 	 *
-	 * @param i the first columns is 1, the second is 2, ...
+	 * @param i the first column is 1, the second is 2, ...
 	 * @param type Class representing the Java data type to convert the
-	 *        designated columns to
-	 * @return an instance of type holding the columns value
+	 *        designated column to
+	 * @return an instance of type holding the column value
 	 * @throws SQLException if conversion is not supported, type is
 	 *         null or another error occurs. The getCause() method of
 	 *         the exception may provide a more detailed exception, for
@@ -2212,18 +2211,18 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row
+	 * Retrieves the value of the designated column in the current row
 	 * of this ResultSet object and will convert from the SQL type of
-	 * the columns to the requested Java data type, if the conversion is
+	 * the column to the requested Java data type, if the conversion is
 	 * supported.  If the conversion is not supported or null is
 	 * specified for the type, a SQLException is thrown.
 	 *
-	 * @param columnLabel the label for the columns specified with the
+	 * @param columnLabel the label for the column specified with the
 	 *        SQL AS clause. If the SQL AS clause was not specified,
-	 *        then the label is the name of the columns
+	 *        then the label is the name of the column
 	 * @param type Class representing the Java data type to convert the
-	 *        designated columns to
-	 * @return an instance of type holding the columns value
+	 *        designated column to
+	 * @return an instance of type holding the column value
 	 * @throws SQLException if conversion is not supported, type is
 	 *         null or another error occurs. The getCause() method of
 	 *         the exception may provide a more detailed exception, for
@@ -2294,20 +2293,20 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Gets the value of the designated columns in the current row of this
+	 * Gets the value of the designated column in the current row of this
 	 * ResultSet object as an Object in the Java programming language.
 	 *
-	 * This method will return the value of the given columns as a Java object.
+	 * This method will return the value of the given column as a Java object.
 	 * The type of the Java object will be the default Java object type
-	 * corresponding to the columns's SQL type, following the mapping for
+	 * corresponding to the column's SQL type, following the mapping for
 	 * built-in types specified in the JDBC specification. If the value is an
 	 * SQL NULL, the driver returns a Java null.
 	 *
 	 * This method may also be used to read database-specific abstract data
 	 * types.
 	 *
-	 * @param columnName the SQL name of the columns
-	 * @return a java.lang.Object holding the columns value
+	 * @param columnName the SQL name of the column
+	 * @return a java.lang.Object holding the column value
 	 * @throws SQLException if a database access error occurs
 	 */
 	@Override
@@ -2316,15 +2315,15 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as an Object  in the Java programming language. If the
 	 * value is an SQL NULL, the driver returns a Java null. This method uses
 	 * the specified Map object for custom mapping if appropriate.
 	 *
-	 * @param colName the name of the columns from which to retrieve the value
+	 * @param colName the name of the column from which to retrieve the value
 	 * @param map a java.util.Map object that contains the mapping from SQL
 	 *        type names to classes in the Java programming language
-	 * @return an Object representing the SQL value in the specified columns
+	 * @return an Object representing the SQL value in the specified column
 	 * @throws SQLException if a database access error occurs
 	 */
 	@Override
@@ -2354,14 +2353,14 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row
+	 * Retrieves the value of the designated column in the current row
 	 * of this ResultSet object as a java.sql.RowId object in the Java
 	 * programming language.
 	 *
-	 * @param columnIndex the first columns is 1, the second is 2, ...
-	 * @return the columns value; if the value is SQL NULL, the value returned
+	 * @param columnIndex the first column is 1, the second is 2, ...
+	 * @return the column value; if the value is SQL NULL, the value returned
 	 *         is null
-	 * @throws SQLException if there is no such columns
+	 * @throws SQLException if there is no such column
 	 * @throws SQLFeatureNotSupportedException the JDBC driver does
 	 *         not support this method
 	 */
@@ -2371,12 +2370,12 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row
+	 * Retrieves the value of the designated column in the current row
 	 * of this ResultSet object as a java.sql.RowId object in the Java
 	 * programming language.
 	 *
-	 * @param columnName the SQL name of the columns
-	 * @return the columns value; if the value is SQL NULL, the value returned
+	 * @param columnName the SQL name of the column
+	 * @return the column value; if the value is SQL NULL, the value returned
 	 *         is null
 	 * @throws SQLException if the ResultSet object does not contain columnName
 	 * @throws SQLFeatureNotSupportedException the JDBC driver does
@@ -2388,13 +2387,13 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as a short in the Java programming language.
 	 *
-	 * @param columnIndex the first columns is 1, the second is 2, ...
-	 * @return the columns value; if the value is SQL NULL, the value returned
+	 * @param columnIndex the first column is 1, the second is 2, ...
+	 * @return the column value; if the value is SQL NULL, the value returned
 	 *         is 0
-	 * @throws SQLException if there is no such columns
+	 * @throws SQLException if there is no such column
 	 */
 	@Override
 	public short getShort(int columnIndex) throws SQLException {
@@ -2414,11 +2413,11 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as a short in the Java programming language.
 	 *
-	 * @param columnName the SQL name of the columns
-	 * @return the columns value; if the value is SQL NULL, the value returned
+	 * @param columnName the SQL name of the column
+	 * @return the column value; if the value is SQL NULL, the value returned
 	 *         is 0
 	 * @throws SQLException if the ResultSet object does not contain columnName
 	 */
@@ -2441,13 +2440,13 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as a String in the Java programming language.
 	 *
-	 * @param columnIndex the first columns is 1, the second is 2, ...
-	 * @return the columns value; if the value is SQL NULL, the value returned
+	 * @param columnIndex the first column is 1, the second is 2, ...
+	 * @return the column value; if the value is SQL NULL, the value returned
 	 *         is null
-	 * @throws SQLException if there is no such columns
+	 * @throws SQLException if there is no such column
 	 */
 	@Override
 	public String getString(int columnIndex) throws SQLException {
@@ -2465,11 +2464,11 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as a String in the Java programming language.
 	 *
-	 * @param columnName the SQL name of the columns
-	 * @return the columns value; if the value is SQL NULL, the value returned
+	 * @param columnName the SQL name of the column
+	 * @return the column value; if the value is SQL NULL, the value returned
 	 *         is null
 	 * @throws SQLException if the ResultSet object does not contain columnName
 	 */
@@ -2479,15 +2478,15 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row
+	 * Retrieves the value of the designated column in the current row
 	 * of this ResultSet object as a String in the Java programming
 	 * language. It is intended for use when accessing NCHAR,NVARCHAR
 	 * and LONGNVARCHAR columns.
 	 *
-	 * @param columnIndex the first columns is 1, the second is 2, ...
-	 * @return the columns value; if the value is SQL NULL, the value returned
+	 * @param columnIndex the first column is 1, the second is 2, ...
+	 * @return the column value; if the value is SQL NULL, the value returned
 	 *         is null
-	 * @throws SQLException if there is no such columns
+	 * @throws SQLException if there is no such column
 	 * @throws SQLFeatureNotSupportedException the JDBC driver does
 	 *         not support this method
 	 */
@@ -2497,13 +2496,13 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row
+	 * Retrieves the value of the designated column in the current row
 	 * of this ResultSet object as a String in the Java programming
 	 * language. It is intended for use when accessing NCHAR,NVARCHAR
 	 * and LONGNVARCHAR columns.
 	 *
-	 * @param columnName the SQL name of the columns
-	 * @return the columns value; if the value is SQL NULL, the value returned
+	 * @param columnName the SQL name of the column
+	 * @return the column value; if the value is SQL NULL, the value returned
 	 *         is null
 	 * @throws SQLException if the ResultSet object does not contain columnName
 	 * @throws SQLFeatureNotSupportedException the JDBC driver does
@@ -2515,11 +2514,11 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row
+	 * Retrieves the value of the designated column in the current row
 	 * of this ResultSet as a java.sql.SQLXML object in the Java
 	 * programming language.
 	 *
-	 * @param i the first columns is 1, the second is 2, ...
+	 * @param i the first column is 1, the second is 2, ...
 	 * @return a SQLXML object that maps an SQL XML value
 	 * @throws SQLException if a database access error occurs
 	 * @throws SQLFeatureNotSupportedException the JDBC driver does
@@ -2531,13 +2530,13 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row
+	 * Retrieves the value of the designated column in the current row
 	 * of this ResultSet as a java.sql.SQLXML object in the Java
 	 * programming language.
 	 *
-	 * @param colName the label for the columns specified with the SQL AS
+	 * @param colName the label for the column specified with the SQL AS
 	 *        clause. If the SQL AS clause was not specified, then the
-	 *        label is the name of the columns
+	 *        label is the name of the column
 	 * @return a SQLXML object that maps an SQL XML value
 	 * @throws SQLException if a database access error occurs
 	 * @throws SQLFeatureNotSupportedException the JDBC driver does
@@ -2561,12 +2560,12 @@ public class MonetResultSet extends Mone
 	 * LONGVARCHAR an attempt is made to parse the date according to the
 	 * given type.  The given Calender object is filled with the parsed
 	 * data.  Optional fractional seconds (nanos) are returned by this
-	 * method.  If the underlying type of the columns is none of the
+	 * method.  If the underlying type of the column is none of the
 	 * mentioned six, January 1st 1970 0:00:00 GMT is returned.<br />
 	 * The dates are parsed with the given Calendar.
 	 *
 	 * @param cal the Calendar to use/fill when parsing the date/time
-	 * @param columnIndex the columns to parse
+	 * @param columnIndex the column to parse
 	 * @param type the corresponding java.sql.Types type of the calling
 	 *        function
 	 * @return the fractional seconds (nanos) or -1 if the value is NULL
@@ -2719,12 +2718,12 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as a java.sql.Date object in the Java programming
 	 * language.
 	 *
-	 * @param columnIndex the first columns is 1, the second is 2, ...
-	 * @return the columns value; if the value is SQL NULL, the value returned
+	 * @param columnIndex the first column is 1, the second is 2, ...
+	 * @return the column value; if the value is SQL NULL, the value returned
 	 *         is null
 	 * @throws SQLException if a database access error occurs
 	 * @see #getDate(int col, Calendar cal)
@@ -2735,15 +2734,15 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as a java.sql.Date object in the Java programming
 	 * language. This method uses the given calendar to construct an appropriate
 	 * millisecond value for the date if the underlying database does not store
 	 * timezone information.
 	 *
-	 * @param columnIndex the first columns is 1, the second is 2, ...
+	 * @param columnIndex the first column is 1, the second is 2, ...
 	 * @param cal the java.util.Calendar object to use in constructing the date
-	 * @return the columns value; if the value is SQL NULL, the value returned
+	 * @return the column value; if the value is SQL NULL, the value returned
 	 *         is null
 	 * @throws SQLException if a database access error occurs
 	 */
@@ -2756,13 +2755,13 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as a java.sql.Date object in the Java programming
 	 * language.
 	 *
-	 * @param columnName the SQL name of the columns from which to retrieve the
+	 * @param columnName the SQL name of the column from which to retrieve the
 	 *        value
-	 * @return the columns value; if the value is SQL NULL, the value returned
+	 * @return the column value; if the value is SQL NULL, the value returned
 	 *         is null
 	 * @throws SQLException if a database access error occurs
 	 */
@@ -2772,16 +2771,16 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as a java.sql.Date object in the Java programming
 	 * language. This method uses the given calendar to construct an appropriate
 	 * millisecond value for the date if the underlying database does not store
 	 * timezone information.
 	 *
-	 * @param columnName the SQL name of the columns from which to retrieve the
+	 * @param columnName the SQL name of the column from which to retrieve the
 	 *        value
 	 * @param cal the java.util.Calendar object to use in constructing the date
-	 * @return the columns value; if the value is SQL NULL, the value returned
+	 * @return the column value; if the value is SQL NULL, the value returned
 	 *         is null
 	 * @throws SQLException if a database access error occurs
 	 */
@@ -2793,12 +2792,12 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as a java.sql.Time object in the Java programming
 	 * language.
 	 *
-	 * @param columnIndex the first columns is 1, the second is 2, ...
-	 * @return the columns value; if the value is SQL NULL, the value returned
+	 * @param columnIndex the first column is 1, the second is 2, ...
+	 * @return the column value; if the value is SQL NULL, the value returned
 	 *         is null
 	 * @throws SQLException if a database access error occurs
 	 */
@@ -2808,16 +2807,16 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of
+	 * Retrieves the value of the designated column in the current row of
 	 * this ResultSet object as a java.sql.Time object in the Java programming
 	 * language. This method uses the given calendar to construct an appropriate
 	 * millisecond value for the time if the underlying database does not store
 	 * timezone information.
 	 *
-	 * @param columnIndex the first columns is 1, the second is 2, ...
+	 * @param columnIndex the first column is 1, the second is 2, ...
 	 * @param cal the java.util.Calendar object to use in constructing the
 	 *        timestamp
-	 * @return the columns value as a java.sql.Timestamp object; if the value is
+	 * @return the column value as a java.sql.Timestamp object; if the value is
 	 *         SQL NULL, the value returned is null in the Java programming
 	 *         language
 	 * @throws SQLException if a database access error occurs
@@ -2831,12 +2830,12 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as a java.sql.Time object in the Java programming
 	 * language.
 	 *
-	 * @param columnName the SQL name of the columns
-	 * @return the columns value; if the value is SQL NULL, the value returned
+	 * @param columnName the SQL name of the column
+	 * @return the column value; if the value is SQL NULL, the value returned
 	 *         is null
 	 * @throws SQLException if a database access error occurs
 	 */
@@ -2846,16 +2845,16 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of
+	 * Retrieves the value of the designated column in the current row of
 	 * this ResultSet object as a java.sql.Time object in the Java programming
 	 * language. This method uses the given calendar to construct an appropriate
 	 * millisecond value for the time if the underlying database does not store
 	 * timezone information.
 	 *
-	 * @param columnName the SQL name of the columns
+	 * @param columnName the SQL name of the column
 	 * @param cal the java.util.Calendar object to use in constructing the
 	 *        timestamp
-	 * @return the columns value as a java.sql.Timestamp object; if the value is
+	 * @return the column value as a java.sql.Timestamp object; if the value is
 	 *         SQL NULL, the value returned is null in the Java programming
 	 *         language
 	 * @throws SQLException if a database access error occurs
@@ -2868,12 +2867,12 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as a java.sql.Timestamp object in the Java programming
 	 * language.
 	 *
-	 * @param columnIndex the first columns is 1, the second is 2, ...
-	 * @return the columns value; if the value is SQL NULL, the value returned
+	 * @param columnIndex the first column is 1, the second is 2, ...
+	 * @return the column value; if the value is SQL NULL, the value returned
 	 *         is null
 	 * @throws SQLException if a database access error occurs
 	 */
@@ -2883,16 +2882,16 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as a java.sql.Timestamp object in the Java programming
 	 * language. This method uses the given calendar to construct an appropriate
 	 * millisecond value for the timestamp if the underlying database does not
 	 * store timezone information.
 	 *
-	 * @param columnIndex the first columns is 1, the second is 2, ...
+	 * @param columnIndex the first column is 1, the second is 2, ...
 	 * @param cal the java.util.Calendar object to use in constructing the
 	 *        timestamp
-	 * @return the columns value as a java.sql.Timestamp object; if the value is
+	 * @return the column value as a java.sql.Timestamp object; if the value is
 	 *         SQL NULL, the value returned is null in the Java programming
 	 *         language
 	 * @throws SQLException if a database access error occurs
@@ -2911,12 +2910,12 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as a java.sql.Timestamp object in the Java programming
 	 * language.
 	 *
-	 * @param columnName the SQL name of the columns
-	 * @return the columns value; if the value is SQL NULL, the value returned
+	 * @param columnName the SQL name of the column
+	 * @return the column value; if the value is SQL NULL, the value returned
 	 *         is null
 	 * @throws SQLException if a database access error occurs
 	 */
@@ -2926,16 +2925,16 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row of this
+	 * Retrieves the value of the designated column in the current row of this
 	 * ResultSet object as a java.sql.Timestamp object in the Java programming
 	 * language. This method uses the given calendar to construct an appropriate
 	 * millisecond value for the timestamp if the underlying database does not
 	 * store timezone information.
 	 *
-	 * @param columnName the SQL name of the columns
+	 * @param columnName the SQL name of the column
 	 * @param cal the java.util.Calendar object to use in constructing the
 	 *        timestamp
-	 * @return the columns value as a java.sql.Timestamp object; if the value is
+	 * @return the column value as a java.sql.Timestamp object; if the value is
 	 *         SQL NULL, the value returned is null in the Java programming
 	 *         language
 	 * @throws SQLException if a database access error occurs
@@ -2960,13 +2959,13 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row
+	 * Retrieves the value of the designated column in the current row
 	 * of this ResultSet object as a java.net.URL object in the Java
 	 * programming language.
 	 *
-	 * @param columnIndex the index of the columns 1 is the first,
+	 * @param columnIndex the index of the column 1 is the first,
 	 *                    2 is the second,...
-	 * @return the columns value as a java.net.URL object; if the value
+	 * @return the column value as a java.net.URL object; if the value
 	 *         is SQL NULL, the value returned is null in the Java
 	 *         programming language
 	 * @throws SQLException if a database access error occurs, or if a
@@ -2992,12 +2991,12 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Retrieves the value of the designated columns in the current row
+	 * Retrieves the value of the designated column in the current row
 	 * of this ResultSet object as a java.net.URL object in the Java
 	 * programming language.
 	 *
-	 * @param columnName the SQL name of the columns
-	 * @return the columns value as a java.net.URL object; if the value
+	 * @param columnName the SQL name of the column
+	 * @return the column value as a java.net.URL object; if the value
 	 *         is SQL NULL, the value returned is null in the Java
 	 *         programming language
 	 * @throws SQLException if a database access error occurs, or if a
@@ -3675,12 +3674,12 @@ public class MonetResultSet extends Mone
 
 	// Chapter 14.2.3.3 Sun JDBC 3.0 Specification
 	/**
-	 * Reports whether the last columns read had a value of SQL NULL. Note that
-	 * you must first call one of the getter methods on a columns to try to read
+	 * Reports whether the last column read had a value of SQL NULL. Note that
+	 * you must first call one of the getter methods on a column to try to read
 	 * its value and then call the method wasNull to see if the value read was
 	 * SQL NULL.
 	 *
-	 * @return true if the last columns value read was SQL NULL and false
+	 * @return true if the last column value read was SQL NULL and false
 	 *          otherwise
 	 */
 	@Override
@@ -3707,14 +3706,14 @@ public class MonetResultSet extends Mone
 	}
 
 	/**
-	 * Small helper method that formats the "Invalid QueryResultSetColumn Index number ..." message
+	 * Small helper method that formats the "Invalid Column Index number ..." message
 	 * and creates a new SQLException object whose SQLState is set to "M1M05".
 	 *
-	 * @param colIdx the columns index number
+	 * @param colIdx the column index number
 	 * @return a new created SQLException object with SQLState M1M05
 	 */
 	public final static SQLException newSQLInvalidColumnIndexException(int colIdx) {
-		return new SQLException("Invalid QueryResultSetColumn Index number: " + colIdx, "M1M05");
+		return new SQLException("Invalid Column Index number: " + colIdx, "M1M05");
 	}
 
 	/**
--- a/src/main/java/nl/cwi/monetdb/jdbc/MonetStatement.java
+++ b/src/main/java/nl/cwi/monetdb/jdbc/MonetStatement.java
@@ -413,8 +413,8 @@ public class MonetStatement extends Mone
 	 * getResultSet or getUpdateCount  to retrieve the result, and
 	 * getMoreResults to move to any subsequent result(s).
 	 *
-	 * MonetDB only supports returing the generated key for one columns,
-	 * which will be the first columns that has a serial.  Hence, this
+	 * MonetDB only supports returing the generated key for one column,
+	 * which will be the first column that has a serial.  Hence, this
 	 * method cannot work as required and the driver will fall back to
 	 * executing with request to the database to return the generated
 	 * key, if any.
@@ -427,7 +427,7 @@ public class MonetStatement extends Mone
 	 *         it is an update count or there are no results
 	 * @throws SQLException if a database access error occurs or the
 	 *         elements in the int array passed to this method are not
-	 *         valid columns indexes
+	 *         valid column indexes
 	 */
 	@Override
 	public boolean execute(String sql, int[] columnIndexes)
@@ -457,8 +457,8 @@ public class MonetStatement extends Mone
 	 * getResultSet or getUpdateCount  to retrieve the result, and
 	 * getMoreResults to move to any subsequent result(s).
 	 *
-	 * MonetDB only supports returing the generated key for one columns,
-	 * which will be the first columns that has a serial.  Hence, this
+	 * MonetDB only supports returing the generated key for one column,
+	 * which will be the first column that has a serial.  Hence, this
 	 * method cannot work as required and the driver will fall back to
 	 * executing with request to the database to return the generated
 	 * key, if any.
@@ -471,7 +471,7 @@ public class MonetStatement extends Mone
 	 *         it is an update count or there are no more results
 	 * @throws SQLException if a database access error occurs or the
 	 *         elements of the String array passed to this method are
-	 *         not valid columns names
+	 *         not valid column names
 	 */
 	@Override
 	public boolean execute(String sql, String[] columnNames)
@@ -593,22 +593,22 @@ public class MonetStatement extends Mone
 	 * available for retrieval. The driver will ignore the array if the
 	 * SQL statement is not an INSERT statement.
 	 *
-	 * MonetDB only supports returing the generated key for one columns,
-	 * which will be the first columns that has a serial.  Hence, this
+	 * MonetDB only supports returing the generated key for one column,
+	 * which will be the first column that has a serial.  Hence, this
 	 * method cannot work as required and the driver will fall back to
 	 * executing with request to the database to return the generated
 	 * key, if any.
 	 *
 	 * @param sql an SQL INSERT, UPDATE or DELETE statement or an SQL
 	 *        statement that returns nothing, such as an SQL DDL statement
-	 * @param columnIndexes an array of columns indexes indicating the
+	 * @param columnIndexes an array of column indexes indicating the
 	 *        columns that should be returned from the inserted row
 	 * @return either the row count for INSERT, UPDATE, or DELETE
 	 *         statements, or 0 for SQL statements that return nothing
 	 * @throws SQLException if a database access error occurs, the SQL
 	 *         statement returns a ResultSet object, or the second
 	 *         argument supplied to this method is not an int array
-	 *         whose elements are valid columns indexes
+	 *         whose elements are valid column indexes
 	 */
 	@Override
 	public int executeUpdate(String sql, int[] columnIndexes)
@@ -624,8 +624,8 @@ public class MonetStatement extends Mone
 	 * available for retrieval. The driver will ignore the array if the
 	 * SQL statement is not an INSERT statement.
 	 *
-	 * MonetDB only supports returing the generated key for one columns,
-	 * which will be the first columns that has a serial.  Hence, this
+	 * MonetDB only supports returing the generated key for one column,
+	 * which will be the first column that has a serial.  Hence, this
 	 * method cannot work as required and the driver will fall back to
 	 * executing with request to the database to return the generated
 	 * key, if any.
@@ -639,7 +639,7 @@ public class MonetStatement extends Mone
 	 * @throws SQLException if a database access error occurs, the SQL
 	 *         statement returns a ResultSet object, or the second
 	 *         argument supplied to this method is not a String array
-	 *         whose elements are valid columns names
+	 *         whose elements are valid column names
 	 */
 	@Override
 	public int executeUpdate(String sql, String[] columnNames)
@@ -731,7 +731,7 @@ public class MonetStatement extends Mone
 
 	/**
 	 * Retrieves the maximum number of bytes that can be returned for
-	 * character and binary columns values in a ResultSet object produced
+	 * character and binary column values in a ResultSet object produced
 	 * by this Statement object. This limit applies only to BINARY,
 	 * VARBINARY, LONGVARBINARY, CHAR, VARCHAR, and LONGVARCHAR
 	 * columns. If the limit is exceeded, the excess data is silently
@@ -740,7 +740,7 @@ public class MonetStatement extends Mone
 	 * The MonetDB JDBC driver currently doesn't support limiting
 	 * fieldsizes, and hence always return 0 (unlimited).
 	 *
-	 * @return the current columns size limit for columns storing
+	 * @return the current column size limit for columns storing
 	 *         character and binary values; zero means there is no limit
 	 * @throws SQLException if a database access error occurs
 	 */
@@ -1049,7 +1049,7 @@ public class MonetStatement extends Mone
 
 	/**
 	 * Sets the limit for the maximum number of bytes in a ResultSet
-	 * columns storing character or binary values to the given number of
+	 * column storing character or binary values to the given number of
 	 * bytes. This limit applies only to BINARY, VARBINARY,
 	 * LONGVARBINARY, CHAR, VARCHAR, and LONGVARCHAR fields. If the
 	 * limit is exceeded, the excess data is silently discarded. For
@@ -1059,7 +1059,7 @@ public class MonetStatement extends Mone
 	 * driver does not emulate it either, since it doesn't really lead
 	 * to memory reduction.
 	 *
-	 * @param max the new columns size limit in bytes; zero means there
+	 * @param max the new column size limit in bytes; zero means there
 	 *        is no limit
 	 * @throws SQLException if a database access error occurs or the
 	 *         condition max &gt;= 0 is not satisfied
--- a/src/main/java/nl/cwi/monetdb/util/Exporter.java
+++ b/src/main/java/nl/cwi/monetdb/util/Exporter.java
@@ -41,7 +41,7 @@ public abstract class Exporter {
 	
 	/**
 	 * returns the given string between two double quotes for usage as
-	 * identifier such as columns or table name in SQL queries.
+	 * identifier such as column or table name in SQL queries.
 	 *
 	 * @param in the string to quote
 	 * @return the quoted string
--- a/src/main/java/nl/cwi/monetdb/util/SQLExporter.java
+++ b/src/main/java/nl/cwi/monetdb/util/SQLExporter.java
@@ -38,7 +38,7 @@ public class SQLExporter extends Exporte
 	/**
 	 * A helper method to generate SQL CREATE code for a given table.
 	 * This method performs all required lookups to find all relations and
-	 * columns information, as well as additional indices.
+	 * column information, as well as additional indices.
 	 *
 	 * @param dbmd a DatabaseMetaData object to query on (not null)
 	 * @param type the type of the object, e.g. VIEW, TABLE (not null)
@@ -103,7 +103,7 @@ public class SQLExporter extends Exporte
 		for (i = 0; cols.next(); i++) {
 			if (i > 0) out.println(",");
 
-			// print columns name (with double quotes)
+			// print column name (with double quotes)
 			s = dq(cols.getString(colNmIndex));
 			out.print("\t" + s + repeat(' ', (colwidth - s.length() + 3)));
 
@@ -140,7 +140,7 @@ public class SQLExporter extends Exporte
 					break;
 			}
 
-			sb.append(s);	// add the data type for this columns
+			sb.append(s);	// add the data type for this column
 
 			// do some SQL/MonetDB type length/precision and scale specifics
 			switch (ctype) {
@@ -178,7 +178,7 @@ public class SQLExporter extends Exporte
 					sb.append(" DEFAULT ").append(defaultValue);
 			}
 
-			// print columns type, optional length and scale, optional Not NULL, optional default value
+			// print column type, optional length and scale, optional Not NULL, optional default value
 			out.print(sb.toString());
 
 			sb.delete(0, sb.length());	// clear the stringbuffer for next columns
@@ -187,10 +187,10 @@ public class SQLExporter extends Exporte
 
 		// add the primary key constraint definition
 		// unfortunately some idiot defined that getPrimaryKeys()
-		// returns the primary key columns sorted by columns name, not
+		// returns the primary key column sorted by column name, not
 		// key sequence order.  So we have to sort ourself :(
 		cols = dbmd.getPrimaryKeys(catalog, schema, name);
-		// first make an 'index' of the KEY_SEQ columns
+		// first make an 'index' of the KEY_SEQ column
 		SortedMap<Integer, Integer> seqIndex = new TreeMap<>();
 		for (i = 1; cols.next(); i++) {
 			seqIndex.put(cols.getInt("KEY_SEQ"), i);