diff --git a/src/tap/db/JDBCConnection.java b/src/tap/db/JDBCConnection.java
index 7bb175fcce916cf5f495e1cce33ddfd26c019f67..c84079805d7c62a8b4fb764700bf8febb938bac1 100644
--- a/src/tap/db/JDBCConnection.java
+++ b/src/tap/db/JDBCConnection.java
@@ -3271,7 +3271,8 @@ public class JDBCConnection implements DBConnection {
 			int cnt = 0;
 			String columnPattern = columnCaseSensitive ? columnName : null;
 			while(rsT.next()){
-				String rsSchema = nullifyIfNeeded(rsT.getString(2));
+                                int rsTSchemaIndex = dbms.equalsIgnoreCase(DBMS_MYSQL) ? 1 : 2;
+				String rsSchema = nullifyIfNeeded(rsT.getString(rsTSchemaIndex));
 				String rsTable = rsT.getString(3);
 				// test the schema name:
 				if (!supportsSchema || schemaName == null || equals(rsSchema, schemaName, schemaCaseSensitive)){
diff --git a/src/tap/metadata/VotType.java b/src/tap/metadata/VotType.java
index 64988a7d7174b755b8608e4358e7391afb8afba2..695b359fb92bbebdc1294fcc4a625f7979335f14 100644
--- a/src/tap/metadata/VotType.java
+++ b/src/tap/metadata/VotType.java
@@ -160,13 +160,13 @@ public final class VotType {
 
 			case CHAR:
 				this.datatype = VotDatatype.CHAR;
-				this.arraysize = Integer.toString(tapType.length > 0 ? tapType.length : null);
+				this.arraysize = tapType.length > 0 ? Integer.toString(tapType.length) : null;
 				this.xtype = null;
 				break;
 
 			case BINARY:
 				this.datatype = VotDatatype.UNSIGNEDBYTE;
-				this.arraysize = Integer.toString(tapType.length > 0 ? tapType.length : null);
+				this.arraysize = tapType.length > 0 ? Integer.toString(tapType.length) : null;
 				this.xtype = null;
 				break;