Author: shawkins
Date: 2012-01-23 13:52:20 -0500 (Mon, 23 Jan 2012)
New Revision: 3813
Added:
trunk/common-core/src/main/java/org/teiid/core/types/BinaryType.java
trunk/common-core/src/main/java/org/teiid/core/types/basic/BinaryToBlobTransform.java
trunk/common-core/src/main/java/org/teiid/core/types/basic/BlobToBinaryTransform.java
trunk/metadata/src/main/resources/org/teiid/metadata/types.dat
Removed:
trunk/client/src/main/java/org/teiid/client/metadata/ResultsMetadataDefaults.java
trunk/metadata/DATATYPES.INDEX
trunk/metadata/system-vdb-update.txt
Modified:
trunk/api/src/main/java/org/teiid/language/visitor/SQLStringVisitor.java
trunk/api/src/main/java/org/teiid/metadata/BaseColumn.java
trunk/api/src/main/java/org/teiid/metadata/Datatype.java
trunk/api/src/main/java/org/teiid/translator/TypeFacility.java
trunk/build/kits/jboss-as7/docs/teiid/teiid-releasenotes.html
trunk/client/src/main/java/org/teiid/client/BatchSerializer.java
trunk/client/src/main/java/org/teiid/client/ResultsMessage.java
trunk/client/src/main/java/org/teiid/jdbc/CallableStatementImpl.java
trunk/client/src/main/java/org/teiid/jdbc/DataTypeTransformer.java
trunk/client/src/main/java/org/teiid/jdbc/DatabaseMetaDataImpl.java
trunk/client/src/main/java/org/teiid/jdbc/PreparedStatementImpl.java
trunk/client/src/main/java/org/teiid/jdbc/ResultSetImpl.java
trunk/client/src/main/java/org/teiid/jdbc/StatementImpl.java
trunk/client/src/main/resources/org/teiid/jdbc/i18n.properties
trunk/client/src/test/java/org/teiid/client/TestBatchSerializer.java
trunk/client/src/test/java/org/teiid/jdbc/TestAllResultsImpl.java
trunk/client/src/test/java/org/teiid/jdbc/TestCallableStatement.java
trunk/client/src/test/java/org/teiid/jdbc/util/ResultSetUtil.java
trunk/common-core/src/main/java/org/teiid/core/types/DataTypeManager.java
trunk/common-core/src/main/java/org/teiid/core/types/JDBCSQLTypeInfo.java
trunk/common-core/src/main/java/org/teiid/core/types/basic/ClobToStringTransform.java
trunk/common-core/src/main/java/org/teiid/core/util/PropertiesUtils.java
trunk/common-core/src/test/java/org/teiid/core/types/TestDataTypeManager.java
trunk/connectors/translator-jdbc/src/main/java/org/teiid/translator/jdbc/JDBCExecutionFactory.java
trunk/engine/src/main/java/org/teiid/common/buffer/impl/SizeUtility.java
trunk/engine/src/main/java/org/teiid/core/id/UUID.java
trunk/engine/src/main/java/org/teiid/dqp/internal/process/DQPWorkContext.java
trunk/engine/src/main/java/org/teiid/dqp/internal/process/MetaDataProcessor.java
trunk/engine/src/main/java/org/teiid/dqp/internal/process/RequestWorkItem.java
trunk/engine/src/main/java/org/teiid/query/function/FunctionDescriptor.java
trunk/engine/src/main/java/org/teiid/query/function/FunctionTree.java
trunk/engine/src/main/java/org/teiid/query/metadata/BasicQueryMetadataWrapper.java
trunk/engine/src/main/java/org/teiid/query/metadata/QueryMetadataInterface.java
trunk/engine/src/main/java/org/teiid/query/metadata/TempMetadataAdapter.java
trunk/engine/src/main/java/org/teiid/query/metadata/TransformationMetadata.java
trunk/engine/src/main/java/org/teiid/query/processor/relational/DependentCriteriaProcessor.java
trunk/engine/src/main/java/org/teiid/query/sql/symbol/Constant.java
trunk/engine/src/main/java/org/teiid/query/sql/visitor/SQLStringVisitor.java
trunk/engine/src/main/javacc/org/teiid/query/parser/SQLParser.jj
trunk/engine/src/test/java/org/teiid/common/buffer/impl/TestSizeUtility.java
trunk/engine/src/test/java/org/teiid/query/function/TestFunctionTree.java
trunk/engine/src/test/java/org/teiid/query/parser/TestParser.java
trunk/engine/src/test/java/org/teiid/query/processor/TestProcessor.java
trunk/engine/src/test/java/org/teiid/query/sql/symbol/TestConstant.java
trunk/metadata/src/main/java/org/teiid/metadata/index/IndexMetadataFactory.java
trunk/metadata/src/main/java/org/teiid/metadata/index/RecordFactory.java
trunk/metadata/src/main/resources/System.vdb
trunk/metadata/src/test/java/org/teiid/metadata/index/VDBMetadataFactory.java
trunk/runtime/src/main/java/org/teiid/deployers/VDBRepository.java
trunk/test-integration/common/src/test/java/org/teiid/connector/metadata/runtime/MockConnector.java
trunk/test-integration/common/src/test/java/org/teiid/connector/metadata/runtime/TestElement.java
trunk/test-integration/common/src/test/java/org/teiid/connector/metadata/runtime/TestParams.java
trunk/test-integration/common/src/test/java/org/teiid/transport/TestJDBCSocketTransport.java
trunk/test-integration/common/src/test/resources/TestCase3473/testGetPrimaryKeys.expected
trunk/test-integration/common/src/test/resources/TestCase3473/testGetTables.expected
trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetColumns.expected
trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetColumns2.expected
trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetColumns3.expected
trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetColumns4.expected
trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetColumnsSingleMatch.expected
trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetIndexInfo.expected
trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetIndexInfoWithEscape.expected
trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetPrimaryKeys.expected
trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetPrimaryKeysWithEscape.expected
trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetProcedureColumns.expected
trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetProcedures.expected
trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetProceduresWithEscape.expected
trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetSchemas.expected
trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetTables.expected
trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetTables_allTables.expected
trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetTables_specificTable.expected
trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetTables_specificTableMultipleTypes.expected
trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetTables_specificTableTypes.expected
trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetTypeInfo_TotalNumber.expected
trunk/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testColumns.expected
trunk/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testIndexInfo.expected
trunk/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testPrimaryKeys.expected
trunk/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testProcedureColumns.expected
trunk/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testProcedures.expected
trunk/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testSchemas.expected
trunk/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testTables.expected
trunk/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testTypeInfo.expected
trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testDataTypes.expected
Log:
TEIID-1834 adding the varbinary type. switching resulsetutil to show the column name. taking ownership of built-in type metadata. and enabling client/server to use a more compact protocol
Modified: trunk/api/src/main/java/org/teiid/language/visitor/SQLStringVisitor.java
===================================================================
--- trunk/api/src/main/java/org/teiid/language/visitor/SQLStringVisitor.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/api/src/main/java/org/teiid/language/visitor/SQLStringVisitor.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -634,6 +634,10 @@
buffer.append("{d '") //$NON-NLS-1$
.append(val)
.append("'}"); //$NON-NLS-1$
+ } else if (type.equals(DataTypeManager.DefaultDataClasses.VARBINARY)) {
+ buffer.append("X'") //$NON-NLS-1$
+ .append(val)
+ .append("'"); //$NON-NLS-1$
} else {
buffer.append(Tokens.QUOTE)
.append(escapeString(val, Tokens.QUOTE))
Modified: trunk/api/src/main/java/org/teiid/metadata/BaseColumn.java
===================================================================
--- trunk/api/src/main/java/org/teiid/metadata/BaseColumn.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/api/src/main/java/org/teiid/metadata/BaseColumn.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -127,7 +127,7 @@
}
public void setDatatypeUUID(String string) {
- datatypeUUID = string;
+ datatypeUUID = DataTypeManager.getCanonicalString(string);
}
public void setDefaultValue(String object) {
@@ -146,24 +146,4 @@
}
}
- public String getDatatypeID() {
- if (this.datatype != null) {
- return this.datatype.getDatatypeID();
- }
- return null;
- }
-
- public String getBaseTypeID() {
- if (this.datatype != null) {
- return this.datatype.getBasetypeID();
- }
- return null;
- }
-
- public String getPrimitiveTypeID() {
- if (this.datatype != null) {
- return this.datatype.getPrimitiveTypeID();
- }
- return null;
- }
}
Modified: trunk/api/src/main/java/org/teiid/metadata/Datatype.java
===================================================================
--- trunk/api/src/main/java/org/teiid/metadata/Datatype.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/api/src/main/java/org/teiid/metadata/Datatype.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -28,7 +28,6 @@
public class Datatype extends AbstractMetadataRecord {
private static final long serialVersionUID = -7839335802224393230L;
- private static final String OLD_PACKAGE = "com.metamatrix.common."; //$NON-NLS-1$
public enum Type {
Basic,
@@ -43,9 +42,6 @@
Complex
}
- /** Delimiter used to separate the URI string from the URI fragment */
- public static final String URI_REFERENCE_DELIMITER = "#"; //$NON-NLS-1$
-
private static final String DEFAULT_JAVA_CLASS_NAME = "java.lang.Object"; //$NON-NLS-1$
private int length;
@@ -60,9 +56,7 @@
private NullType nullType;
private String javaClassName = DEFAULT_JAVA_CLASS_NAME;
private String runtimeTypeName;
- private String datatypeID;
- private String basetypeID;
- private String primitiveTypeID;
+ private String basetypeName;
private Variety varietyType;
public int getLength() {
@@ -121,26 +115,12 @@
return this.runtimeTypeName;
}
- public String getDatatypeID() {
- return this.datatypeID;
- }
-
- public String getBasetypeID() {
- return this.basetypeID;
- }
-
public String getBasetypeName() {
- if ( this.basetypeID != null ) {
- final int i = getBasetypeID().lastIndexOf(URI_REFERENCE_DELIMITER);
- if ( i != -1 && getBasetypeID().length() > (i+1)) {
- return getBasetypeID().substring(i+1);
- }
- }
- return null;
+ return this.basetypeName;
}
-
- public String getPrimitiveTypeID() {
- return this.primitiveTypeID;
+
+ public void setBasetypeName(String name) {
+ this.basetypeName = name;
}
public Variety getVarietyType() {
@@ -148,20 +128,6 @@
}
/**
- * @param string
- */
- public void setBasetypeID(String string) {
- basetypeID = string;
- }
-
- /**
- * @param string
- */
- public void setPrimitiveTypeID(String string) {
- primitiveTypeID = string;
- }
-
- /**
* @param b
*/
public void setAutoIncrement(boolean b) {
@@ -186,12 +152,6 @@
* @param string
*/
public void setJavaClassName(String string) {
- if (string != null) {
- int index = string.indexOf(OLD_PACKAGE);
- if (index == 0) {
- string = "org.teiid.core." + string.substring(OLD_PACKAGE.length()); //$NON-NLS-1$
- }
- }
javaClassName = string;
}
@@ -252,13 +212,6 @@
}
/**
- * @param string
- */
- public void setDatatypeID(String string) {
- datatypeID = string;
- }
-
- /**
* @param s
*/
public void setVarietyType(Variety s) {
@@ -278,8 +231,6 @@
sb.append(getJavaClassName());
sb.append(", ObjectID="); //$NON-NLS-1$
sb.append(getUUID());
- sb.append(", datatypeID="); //$NON-NLS-1$
- sb.append(getDatatypeID());
return sb.toString();
}
Modified: trunk/api/src/main/java/org/teiid/translator/TypeFacility.java
===================================================================
--- trunk/api/src/main/java/org/teiid/translator/TypeFacility.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/api/src/main/java/org/teiid/translator/TypeFacility.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -30,6 +30,7 @@
import java.util.Date;
import java.util.TimeZone;
+import org.teiid.core.types.BinaryType;
import org.teiid.core.types.BlobType;
import org.teiid.core.types.ClobType;
import org.teiid.core.types.DataTypeManager;
@@ -62,6 +63,7 @@
public static final int CLOB = DataTypeManager.DefaultTypeCodes.CLOB;
public static final int XML = DataTypeManager.DefaultTypeCodes.XML;
public static final int NULL = DataTypeManager.DefaultTypeCodes.NULL;
+ public static final int VARBINARY = DataTypeManager.DefaultTypeCodes.VARBINARY;
}
public interface RUNTIME_TYPES {
@@ -84,6 +86,8 @@
public static final Class<ClobType> CLOB = DataTypeManager.DefaultDataClasses.CLOB;
public static final Class<XMLType> XML = DataTypeManager.DefaultDataClasses.XML;
public static final Class<NullType> NULL = DataTypeManager.DefaultDataClasses.NULL;
+ public static final Class<BinaryType> VARBINARY = DataTypeManager.DefaultDataClasses.VARBINARY;
+
}
public static final class RUNTIME_NAMES {
@@ -106,6 +110,7 @@
public static final String BLOB = DataTypeManager.DefaultDataTypes.BLOB;
public static final String CLOB = DataTypeManager.DefaultDataTypes.CLOB;
public static final String XML = DataTypeManager.DefaultDataTypes.XML;
+ public static final String VARBINARY = DataTypeManager.DefaultDataTypes.VARBINARY;
}
/**
Modified: trunk/build/kits/jboss-as7/docs/teiid/teiid-releasenotes.html
===================================================================
--- trunk/build/kits/jboss-as7/docs/teiid/teiid-releasenotes.html 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/build/kits/jboss-as7/docs/teiid/teiid-releasenotes.html 2012-01-23 18:52:20 UTC (rev 3813)
@@ -38,6 +38,7 @@
<LI><B>Texttable selectors</B> - can be used to selectively parse only record lines matching a given selector string. Selectors may also be used for column values to join data from other records positionally.
<LI><B>Comparable LOBs</B> - the system property org.teiid.comparableLobs can be set to use CLOB and BLOB values in comparison/sorting/grouping operations.
<LI><B>Padded String Comparison</B> - the system property org.teiid.padSpace can be set to effectively right pad strings to the same length for comparison.
+ <LI><B>VARBINARY type support</B> - the Teiid VARBINARY type can now be used to support source BINARY and VARBINARY types.
</UL>
<h2><a name="Compatibility">Compatibility Issues</a></h2>
@@ -62,6 +63,7 @@
<li>Unaliased derived columns in the SELECT clause have different default names than prior releases. The name will be exprX where X is the SELECT clause position.
<li>The translator API facilities for iterator/bulk updates were combined and updated. Multi-valued literals were replaced by the Parameter class with an associated value iterator
available on the BatchedCommand. The IteratorValueSource class was also removed.
+ <li>varbinary was added as a reserved word.
</ul>
<h4>from 7.5</h4>
Modified: trunk/client/src/main/java/org/teiid/client/BatchSerializer.java
===================================================================
--- trunk/client/src/main/java/org/teiid/client/BatchSerializer.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/client/src/main/java/org/teiid/client/BatchSerializer.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -40,6 +40,7 @@
import java.util.TimeZone;
import org.teiid.core.TeiidRuntimeException;
+import org.teiid.core.types.BinaryType;
import org.teiid.core.types.BlobType;
import org.teiid.core.types.ClobType;
import org.teiid.core.types.DataTypeManager;
@@ -72,6 +73,7 @@
serializers.put(DataTypeManager.DefaultDataTypes.SHORT, new ShortColumnSerializer());
serializers.put(DataTypeManager.DefaultDataTypes.TIME, new TimeColumnSerializer());
serializers.put(DataTypeManager.DefaultDataTypes.TIMESTAMP, new TimestampColumnSerializer());
+ serializers.put(DataTypeManager.DefaultDataTypes.VARBINARY, new BinaryColumnSerializer());
}
private static final Map<String, ColumnSerializer> version1serializers = new HashMap<String, ColumnSerializer>(128);
@@ -83,12 +85,55 @@
version1serializers.put(DataTypeManager.DefaultDataTypes.BLOB, new BlobColumnSerializer1());
version1serializers.put(DataTypeManager.DefaultDataTypes.XML, new XmlColumnSerializer1());
version1serializers.put(DataTypeManager.DefaultDataTypes.NULL, new NullColumnSerializer1());
- version1serializers.put(DataTypeManager.DefaultDataTypes.OBJECT, new ObjectColumnSerializer1());
+ version1serializers.put(DataTypeManager.DefaultDataTypes.OBJECT, new ObjectColumnSerializer1(DataTypeManager.DefaultTypeCodes.VARBINARY));
+ version1serializers.put(DataTypeManager.DefaultDataTypes.VARBINARY, new BinaryColumnSerializer1());
}
- public static final class ObjectColumnSerializer1 extends ColumnSerializer {
+ static class BinaryColumnSerializer1 extends ColumnSerializer {
+ @Override
+ protected void writeObject(ObjectOutput out, Object obj)
+ throws IOException {
+ byte[] bytes = ((BinaryType)obj).getBytes();
+ out.writeInt(bytes.length); //in theory this could be a short, but we're not strictly enforcing the length
+ out.write(bytes);
+ }
+
+ @Override
+ protected Object readObject(ObjectInput in) throws IOException,
+ ClassNotFoundException {
+ int length = in.readInt();
+ byte[] bytes = new byte[length];
+ in.readFully(bytes);
+ return new BinaryType(bytes);
+ }
+ }
+
+ static class BinaryColumnSerializer extends ColumnSerializer {
+ @Override
+ protected void writeObject(ObjectOutput out, Object obj)
+ throws IOException {
+ //uses object serialization for compatibility with legacy clients
+ super.writeObject(out, ((BinaryType)obj).getBytesDirect());
+ }
+
+ @Override
+ protected Object readObject(ObjectInput in) throws IOException,
+ ClassNotFoundException {
+ //won't actually be used
+ byte[] bytes = (byte[])super.readObject(in);
+ return new BinaryType(bytes);
+ }
+ }
+
+ public static final class ObjectColumnSerializer1 extends ColumnSerializer {
- @Override
+ int highestKnownCode;
+
+ public ObjectColumnSerializer1(int highestKnownCode) {
+ this.highestKnownCode = highestKnownCode;
+ }
+
+ @Override
protected void writeObject(ObjectOutput out, Object obj)
throws IOException {
int code = DataTypeManager.getTypeCode(obj.getClass());
@@ -99,7 +144,7 @@
} else {
out.write((byte)0);
}
- } else if (code != DataTypeManager.DefaultTypeCodes.OBJECT) {
+ } else if (code <= highestKnownCode && code != DataTypeManager.DefaultTypeCodes.OBJECT) {
ColumnSerializer s = getSerializer(DataTypeManager.getDataTypeName(obj.getClass()), (byte)1);
s.writeObject(out, obj);
} else {
@@ -532,7 +577,12 @@
if (batch == null) {
out.writeInt(-1);
} else {
- out.writeInt(batch.size());
+ if (version > 0 && batch.size() > 0) {
+ out.writeInt(-batch.size() -1);
+ out.writeByte(version);
+ } else {
+ out.writeInt(batch.size());
+ }
if (batch.size() > 0) {
int columns = types.length;
out.writeInt(columns);
@@ -558,27 +608,29 @@
}
public static List<List<Object>> readBatch(ObjectInput in, String[] types) throws IOException, ClassNotFoundException {
- return readBatch(in, types, (byte)1);
- }
-
- public static List<List<Object>> readBatch(ObjectInput in, String[] types, byte version) throws IOException, ClassNotFoundException {
int rows = in.readInt();
if (rows == 0) {
return new ArrayList<List<Object>>(0);
- } else if (rows > 0) {
- int columns = in.readInt();
- List<List<Object>> batch = new ResizingArrayList<List<Object>>(rows);
- int numBytes = rows/8;
- int extraRows = rows % 8;
- for (int currentRow = 0; currentRow < rows; currentRow++) {
- batch.add(currentRow, Arrays.asList(new Object[columns]));
- }
- byte[] isNullBuffer = new byte[(extraRows > 0) ? numBytes + 1: numBytes];
- for (int col = 0; col < columns; col++) {
- getSerializer(types[col], version).readColumn(in, col, batch, isNullBuffer);
- }
- return batch;
}
- return null;
+ if (rows == -1) {
+ return null;
+ }
+ byte version = (byte)0;
+ if (rows < 0) {
+ rows = -(rows+1);
+ version = in.readByte();
+ }
+ int columns = in.readInt();
+ List<List<Object>> batch = new ResizingArrayList<List<Object>>(rows);
+ int numBytes = rows/8;
+ int extraRows = rows % 8;
+ for (int currentRow = 0; currentRow < rows; currentRow++) {
+ batch.add(currentRow, Arrays.asList(new Object[columns]));
+ }
+ byte[] isNullBuffer = new byte[(extraRows > 0) ? numBytes + 1: numBytes];
+ for (int col = 0; col < columns; col++) {
+ getSerializer(types[col], version).readColumn(in, col, batch, isNullBuffer);
+ }
+ return batch;
}
}
Modified: trunk/client/src/main/java/org/teiid/client/ResultsMessage.java
===================================================================
--- trunk/client/src/main/java/org/teiid/client/ResultsMessage.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/client/src/main/java/org/teiid/client/ResultsMessage.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -242,7 +242,7 @@
dataTypes = ExternalizeUtil.readStringArray(in);
// Row data
- results = BatchSerializer.readBatch(in, dataTypes, (byte)0);
+ results = BatchSerializer.readBatch(in, dataTypes);
// Plan Descriptions
planDescription = (PlanNode)in.readObject();
@@ -274,7 +274,7 @@
ExternalizeUtil.writeArray(out, dataTypes);
// Results data
- BatchSerializer.writeBatch(out, dataTypes, results, (byte)0);
+ BatchSerializer.writeBatch(out, dataTypes, results, clientSerializationVersion);
// Plan descriptions
out.writeObject(this.planDescription);
Deleted: trunk/client/src/main/java/org/teiid/client/metadata/ResultsMetadataDefaults.java
===================================================================
--- trunk/client/src/main/java/org/teiid/client/metadata/ResultsMetadataDefaults.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/client/src/main/java/org/teiid/client/metadata/ResultsMetadataDefaults.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -1,118 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * See the COPYRIGHT.txt file distributed with this work for information
- * regarding copyright ownership. Some portions may be licensed
- * to Red Hat, Inc. under one or more contributor license agreements.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- * 02110-1301 USA.
- */
-
-package org.teiid.client.metadata;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.teiid.core.types.DataTypeManager;
-
-
-
-/**
- * @since 4.2
- */
-public class ResultsMetadataDefaults {
- public static final Integer DEFAULT_RADIX = new Integer(10);
- public static final Integer DEFAULT_SCALE = new Integer(0);
-
- // XML column constants
- public final static String XML_COLUMN_NAME = "xml"; //$NON-NLS-1$
- public final static Integer XML_COLUMN_LENGTH = new Integer(Integer.MAX_VALUE);
-
- // Update constants
- public static final String UPDATE_COLUMN = "count"; //$NON-NLS-1$
-
- /** Maximum display size for the data type (Class -> Integer) */
- private static final Map<String, Integer> MAX_DISPLAY_SIZE = new HashMap<String, Integer>();
- /** Default precision for a data type (String -> Integer) */
- private static final Map<String, Integer> DEFAULT_PRECISION = new HashMap<String, Integer>();
-
- static {
- MAX_DISPLAY_SIZE.put(DataTypeManager.DefaultDataTypes.BIG_DECIMAL, new Integer(22));
- MAX_DISPLAY_SIZE.put(DataTypeManager.DefaultDataTypes.BIG_INTEGER, new Integer(20));
- MAX_DISPLAY_SIZE.put(DataTypeManager.DefaultDataTypes.BLOB, new Integer(Integer.MAX_VALUE));
- MAX_DISPLAY_SIZE.put(DataTypeManager.DefaultDataTypes.BOOLEAN, new Integer(5));
- MAX_DISPLAY_SIZE.put(DataTypeManager.DefaultDataTypes.BYTE, new Integer(4));
- MAX_DISPLAY_SIZE.put(DataTypeManager.DefaultDataTypes.CHAR, new Integer(1));
- MAX_DISPLAY_SIZE.put(DataTypeManager.DefaultDataTypes.CLOB, new Integer(Integer.MAX_VALUE));
- MAX_DISPLAY_SIZE.put(DataTypeManager.DefaultDataTypes.DATE, new Integer(10));
- MAX_DISPLAY_SIZE.put(DataTypeManager.DefaultDataTypes.DOUBLE, new Integer(22));
- MAX_DISPLAY_SIZE.put(DataTypeManager.DefaultDataTypes.FLOAT, new Integer(22));
- MAX_DISPLAY_SIZE.put(DataTypeManager.DefaultDataTypes.INTEGER, new Integer(11));
- MAX_DISPLAY_SIZE.put(DataTypeManager.DefaultDataTypes.LONG, new Integer(20));
- MAX_DISPLAY_SIZE.put(DataTypeManager.DefaultDataTypes.NULL, new Integer(0));
- MAX_DISPLAY_SIZE.put(DataTypeManager.DefaultDataTypes.OBJECT, new Integer(Integer.MAX_VALUE));
- MAX_DISPLAY_SIZE.put(DataTypeManager.DefaultDataTypes.SHORT, new Integer(6));
- MAX_DISPLAY_SIZE.put(DataTypeManager.DefaultDataTypes.STRING, new Integer(DataTypeManager.MAX_STRING_LENGTH));
- MAX_DISPLAY_SIZE.put(DataTypeManager.DefaultDataTypes.TIME, new Integer(8));
- MAX_DISPLAY_SIZE.put(DataTypeManager.DefaultDataTypes.TIMESTAMP, new Integer(29));
- MAX_DISPLAY_SIZE.put(DataTypeManager.DefaultDataTypes.XML, new Integer(Integer.MAX_VALUE));
- MAX_DISPLAY_SIZE.put(DataTypeManager.DefaultDataTypes.NULL, 4);
-
- /* NOTE1
- * For non-numeric columns (BLOB, BOOLEAN, CHAR, CLOB, DATE, OBJECT, STRING, TIME, TIMESTAMP, XML),
- * the default precision should be the max allowed length of the column
- */
- DEFAULT_PRECISION.put(DataTypeManager.DefaultDataTypes.BIG_DECIMAL, new Integer(20));
- DEFAULT_PRECISION.put(DataTypeManager.DefaultDataTypes.BIG_INTEGER, new Integer(19));
- DEFAULT_PRECISION.put(DataTypeManager.DefaultDataTypes.BLOB, new Integer(Integer.MAX_VALUE));
- DEFAULT_PRECISION.put(DataTypeManager.DefaultDataTypes.BOOLEAN, new Integer(1));
- DEFAULT_PRECISION.put(DataTypeManager.DefaultDataTypes.BYTE, new Integer(3));
- DEFAULT_PRECISION.put(DataTypeManager.DefaultDataTypes.CHAR, new Integer(1));
- DEFAULT_PRECISION.put(DataTypeManager.DefaultDataTypes.CLOB, new Integer(Integer.MAX_VALUE));
- DEFAULT_PRECISION.put(DataTypeManager.DefaultDataTypes.DATE, new Integer(10));
- DEFAULT_PRECISION.put(DataTypeManager.DefaultDataTypes.DOUBLE, new Integer(20));
- DEFAULT_PRECISION.put(DataTypeManager.DefaultDataTypes.FLOAT, new Integer(20));
- DEFAULT_PRECISION.put(DataTypeManager.DefaultDataTypes.INTEGER, new Integer(10));
- DEFAULT_PRECISION.put(DataTypeManager.DefaultDataTypes.LONG, new Integer(19));
- DEFAULT_PRECISION.put(DataTypeManager.DefaultDataTypes.NULL, new Integer(0));
- DEFAULT_PRECISION.put(DataTypeManager.DefaultDataTypes.OBJECT, new Integer(Integer.MAX_VALUE));
- DEFAULT_PRECISION.put(DataTypeManager.DefaultDataTypes.SHORT, new Integer(5));
- DEFAULT_PRECISION.put(DataTypeManager.DefaultDataTypes.STRING, new Integer(DataTypeManager.MAX_STRING_LENGTH));
- DEFAULT_PRECISION.put(DataTypeManager.DefaultDataTypes.TIME, new Integer(8));
- DEFAULT_PRECISION.put(DataTypeManager.DefaultDataTypes.TIMESTAMP, new Integer(29));
- DEFAULT_PRECISION.put(DataTypeManager.DefaultDataTypes.XML, new Integer(Integer.MAX_VALUE));
- DEFAULT_PRECISION.put(DataTypeManager.DefaultDataTypes.NULL, 1);
- }
-
- public static Integer getMaxDisplaySize(Class<?> dataTypeClass) {
- return MAX_DISPLAY_SIZE.get(DataTypeManager.getDataTypeName(dataTypeClass));
- }
-
- public static Integer getMaxDisplaySize(String typeName) {
- return MAX_DISPLAY_SIZE.get(typeName);
- }
-
- public static Integer getDefaultPrecision(Class<?> dataTypeClass) {
- return DEFAULT_PRECISION.get(DataTypeManager.getDataTypeName(dataTypeClass));
- }
-
- public static Integer getDefaultPrecision(String typeName) {
- return DEFAULT_PRECISION.get(typeName);
- }
-
- /** Uninstantiable */
- private ResultsMetadataDefaults() {}
-
-}
Modified: trunk/client/src/main/java/org/teiid/jdbc/CallableStatementImpl.java
===================================================================
--- trunk/client/src/main/java/org/teiid/jdbc/CallableStatementImpl.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/client/src/main/java/org/teiid/jdbc/CallableStatementImpl.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -26,23 +26,10 @@
import java.io.Reader;
import java.math.BigDecimal;
import java.net.URL;
-import java.sql.Array;
-import java.sql.Blob;
-import java.sql.CallableStatement;
-import java.sql.Clob;
-import java.sql.Date;
-import java.sql.NClob;
-import java.sql.Ref;
-import java.sql.RowId;
-import java.sql.SQLException;
-import java.sql.SQLXML;
-import java.sql.Time;
-import java.sql.Timestamp;
+import java.sql.*;
import java.util.Calendar;
import java.util.Map;
-import javax.sql.rowset.serial.SerialBlob;
-
import org.teiid.client.RequestMessage;
import org.teiid.client.RequestMessage.ResultsMode;
import org.teiid.client.RequestMessage.StatementType;
@@ -545,7 +532,7 @@
}
public void setBytes(String parameterName, byte[] x) throws SQLException {
- setObject((Object)parameterName, new SerialBlob(x));
+ setObject((Object)parameterName, x);
}
public void setCharacterStream(String parameterName, Reader reader)
Modified: trunk/client/src/main/java/org/teiid/jdbc/DataTypeTransformer.java
===================================================================
--- trunk/client/src/main/java/org/teiid/jdbc/DataTypeTransformer.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/client/src/main/java/org/teiid/jdbc/DataTypeTransformer.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -41,6 +41,7 @@
import java.sql.Time;
import java.sql.Timestamp;
+import org.teiid.core.types.BinaryType;
import org.teiid.core.types.DataTypeManager;
import org.teiid.core.types.TransformationException;
import org.teiid.core.types.DataTypeManager.DefaultDataClasses;
@@ -127,6 +128,8 @@
return blob.getBytes(1, (int)length);
} else if (value instanceof String) {
return ((String)value).getBytes();
+ } else if (value instanceof BinaryType) {
+ return ((BinaryType)value).getBytesDirect();
}
throw new TeiidSQLException(JDBCPlugin.Util.getString("DataTypeTransformer.cannot_get_bytes")); //$NON-NLS-1$
}
Modified: trunk/client/src/main/java/org/teiid/jdbc/DatabaseMetaDataImpl.java
===================================================================
--- trunk/client/src/main/java/org/teiid/jdbc/DatabaseMetaDataImpl.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/client/src/main/java/org/teiid/jdbc/DatabaseMetaDataImpl.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -32,12 +32,12 @@
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
+import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.logging.Logger;
import org.teiid.client.metadata.ResultsMetadataConstants;
-import org.teiid.client.metadata.ResultsMetadataDefaults;
import org.teiid.core.CoreConstants;
import org.teiid.core.types.DataTypeManager;
import org.teiid.core.types.JDBCSQLTypeInfo;
@@ -45,6 +45,18 @@
public class DatabaseMetaDataImpl extends WrapperImpl implements DatabaseMetaData {
+ private static final HashSet<String> DATATYPES_WITH_NO_PRECISION = new HashSet<String>(
+ Arrays.asList(DataTypeManager.DefaultDataTypes.CHAR,
+ DataTypeManager.DefaultDataTypes.CLOB,
+ DataTypeManager.DefaultDataTypes.BLOB,
+ DataTypeManager.DefaultDataTypes.BOOLEAN,
+ DataTypeManager.DefaultDataTypes.DATE,
+ DataTypeManager.DefaultDataTypes.TIME,
+ DataTypeManager.DefaultDataTypes.TIMESTAMP,
+ DataTypeManager.DefaultDataTypes.OBJECT,
+ DataTypeManager.DefaultDataTypes.XML,
+ DataTypeManager.DefaultDataTypes.VARBINARY));
+
private static final String IS_NULLABLE = "CASE NullType WHEN 'Nullable' THEN 'YES' WHEN 'No Nulls' THEN 'NO' ELSE '' END AS IS_NULLABLE"; //$NON-NLS-1$
private static final String DATA_TYPES = "DataTypes"; //$NON-NLS-1$
@@ -113,26 +125,6 @@
public final static String VIRTUAL_MODEL_NAME = CoreConstants.SYSTEM_MODEL;
}
- private static final String TYPE_MAPPING;
-
- private static final String PRECISION_MAPPING;
-
- static {
- String[] internalTypes = JDBCSQLTypeInfo.getMMTypeNames();
- StringBuffer typeMapping = new StringBuffer();
- StringBuffer precisionMapping = new StringBuffer();
- for (int i = 0; i < internalTypes.length; i++) {
- if (i != 0) {
- typeMapping.append(","); //$NON-NLS-1$
- precisionMapping.append(","); //$NON-NLS-1$
- }
- typeMapping.append(internalTypes[i]).append(",").append(JDBCSQLTypeInfo.getSQLType(internalTypes[i])); //$NON-NLS-1$
- precisionMapping.append(internalTypes[i]).append(",").append(ResultsMetadataDefaults.getDefaultPrecision(internalTypes[i])); //$NON-NLS-1$
- }
- TYPE_MAPPING = typeMapping.toString();
- PRECISION_MAPPING = precisionMapping.toString();
- }
-
private static final String NULLABILITY_MAPPING =
new StringBuffer("No Nulls, ").append(DatabaseMetaData.columnNoNulls) //$NON-NLS-1$
.append( ", Nullable, ").append(DatabaseMetaData.columnNullable) //$NON-NLS-1$
@@ -159,17 +151,6 @@
// .append( ", STRUCT, ") .append(Types.STRUCT) //$NON-NLS-1$
// .append( ", null, ") .append(Types.JAVA_OBJECT).toString(); //$NON-NLS-1$
- private static final String DATATYPES_WITH_NO_PRECISION =
- new StringBuffer("'").append(DataTypeManager.DefaultDataTypes.STRING).append("', '") //$NON-NLS-1$ //$NON-NLS-2$
- .append(DataTypeManager.DefaultDataTypes.CHAR).append("', '") //$NON-NLS-1$
- .append(DataTypeManager.DefaultDataTypes.CLOB).append("', '") //$NON-NLS-1$
- .append(DataTypeManager.DefaultDataTypes.BLOB).append("', '") //$NON-NLS-1$
- .append(DataTypeManager.DefaultDataTypes.BOOLEAN).append("', '") //$NON-NLS-1$
- .append(DataTypeManager.DefaultDataTypes.DATE).append("', '") //$NON-NLS-1$
- .append(DataTypeManager.DefaultDataTypes.TIME).append("', '") //$NON-NLS-1$
- .append(DataTypeManager.DefaultDataTypes.TIMESTAMP).append("', '") //$NON-NLS-1$
- .append(DataTypeManager.DefaultDataTypes.OBJECT).append("'").toString(); //$NON-NLS-1$
-
// Queries
private final static String QUERY_REFERENCE_KEYS =
new StringBuffer("SELECT PKTABLE_CAT, PKTABLE_SCHEM, PKTABLE_NAME, PKCOLUMN_NAME, FKTABLE_CAT, FKTABLE_SCHEM") //$NON-NLS-1$
@@ -192,14 +173,14 @@
.append(" AND UCASE(FKTABLE_SCHEM)").append(LIKE_ESCAPE) //$NON-NLS-1$
.append(" AND UCASE(FKTABLE_NAME)").append(LIKE_ESCAPE).append("ORDER BY PKTABLE_NAME, KEY_SEQ").toString(); //$NON-NLS-1$//$NON-NLS-2$
+ /* Note that we're retrieving length as DATA_TYPE. Once retrieved when then correct this.
+ * This allows us to reuse the ResultSetMetadata.
+ */
private final static String QUERY_COLUMNS = new StringBuffer("SELECT VDBName AS TABLE_CAT") //$NON-NLS-1$
.append(", SchemaName AS TABLE_SCHEM, TableName AS TABLE_NAME, Name AS COLUMN_NAME") //$NON-NLS-1$
- .append(", convert(decodeString(DataType, '").append(TYPE_MAPPING).append("', ','), short) AS DATA_TYPE") //$NON-NLS-1$ //$NON-NLS-2$
+ .append(", Length AS DATA_TYPE") //$NON-NLS-1$
.append(", DataType AS TYPE_NAME") //$NON-NLS-1$
- .append(", CASE WHEN (DataType IN (").append(DATATYPES_WITH_NO_PRECISION) //$NON-NLS-1$
- .append(")) THEN CASE WHEN Length <= 0 THEN convert(decodeString(DataType,'").append(PRECISION_MAPPING) //$NON-NLS-1$
- .append("',','), integer) ELSE Length END ELSE CASE WHEN e.Precision <= 0 THEN convert(decodeString(DataType,'") //$NON-NLS-1$
- .append(PRECISION_MAPPING).append("',','), integer) ELSE e.Precision END END AS COLUMN_SIZE") //$NON-NLS-1$
+ .append(", e.Precision AS COLUMN_SIZE") //$NON-NLS-1$
.append(", NULL AS BUFFER_LENGTH, Scale AS DECIMAL_DIGITS, Radix AS NUM_PREC_RADIX") //$NON-NLS-1$
.append(", convert(decodeString(NullType, '").append(NULLABILITY_MAPPING).append("', ','), integer) AS NULLABLE") //$NON-NLS-1$ //$NON-NLS-2$
.append(", Description AS REMARKS, DefaultValue AS COLUMN_DEF, NULL AS SQL_DATA_TYPE, NULL AS SQL_DATETIME_SUB") //$NON-NLS-1$
@@ -252,10 +233,8 @@
new StringBuffer("SELECT VDBName PROCEDURE_CAT, SchemaName AS PROCEDURE_SCHEM") //$NON-NLS-1$
.append(", ProcedureName AS PROCEDURE_NAME, p.Name AS COLUMN_NAME") //$NON-NLS-1$
.append(", convert(decodeString(TYPE, '").append(PARAM_DIRECTION_MAPPING).append("', ','), short) AS COLUMN_TYPE") //$NON-NLS-1$ //$NON-NLS-2$
- .append(", convert(decodeString(DataType, '").append(TYPE_MAPPING).append("', ','), integer) AS DATA_TYPE") //$NON-NLS-1$ //$NON-NLS-2$
- .append(", DataType AS TYPE_NAME, CASE WHEN p.Precision <= 0 THEN convert(decodeString(DataType,'").append(PRECISION_MAPPING) //$NON-NLS-1$
- .append("',','), integer) ELSE p.Precision END AS \"PRECISION\", CASE WHEN TypeLength <= 0 THEN convert(decodeString(DataType,'") //$NON-NLS-1$
- .append(PRECISION_MAPPING).append("',','), integer) ELSE TypeLength END AS LENGTH, convert(Scale, short) AS SCALE") //$NON-NLS-1$
+ .append(", 1 AS DATA_TYPE") //$NON-NLS-1$
+ .append(", DataType AS TYPE_NAME, p.Precision AS \"PRECISION\", TypeLength AS LENGTH, convert(Scale, short) AS SCALE") //$NON-NLS-1$
.append(", Radix AS RADIX, convert(decodeString(NullType, '") //$NON-NLS-1$
.append(PROC_COLUMN_NULLABILITY_MAPPING).append("', ','), integer) AS NULLABLE") //$NON-NLS-1$
.append(", p.Description AS REMARKS, NULL AS COLUMN_DEF") //$NON-NLS-1$
@@ -392,35 +371,35 @@
// HardCoding metadata details for SCOPE column
metadataList[0] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.BEST_ROW.SCOPE,
- JDBCSQLTypeInfo.SHORT, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
+ DataTypeManager.DefaultDataTypes.SHORT, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
// HardCoding metadata details for COLUMN_NAME column
metadataList[1] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.BEST_ROW.COLUMN_NAME,
- JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
+ DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
// HardCoding metadata details for DATA_TYPE column
metadataList[2] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.BEST_ROW.DATA_TYPE,
- JDBCSQLTypeInfo.SHORT, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
+ DataTypeManager.DefaultDataTypes.SHORT, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
// HardCoding metadata details for TYPE_NAME column
metadataList[3] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.BEST_ROW.TYPE_NAME,
- JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
+ DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
// HardCoding metadata details for COLUMN_SIZE column
metadataList[4] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.BEST_ROW.COLUMN_SIZE,
- JDBCSQLTypeInfo.INTEGER, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
+ DataTypeManager.DefaultDataTypes.INTEGER, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
// HardCoding metadata details for BUFFER_LENGTH column
metadataList[5] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.BEST_ROW.BUFFER_LENGTH,
- JDBCSQLTypeInfo.INTEGER, ResultsMetadataConstants.NULL_TYPES.NULLABLE, driverConnection);
+ DataTypeManager.DefaultDataTypes.INTEGER, ResultsMetadataConstants.NULL_TYPES.NULLABLE, driverConnection);
// HardCoding metadata details for DECIMAL_DIGITS column
metadataList[6] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.BEST_ROW.DECIMAL_DIGITS,
- JDBCSQLTypeInfo.SHORT, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
+ DataTypeManager.DefaultDataTypes.SHORT, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
// HardCoding metadata details for PSEUDO_COLUMN column
metadataList[7] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.BEST_ROW.PSEUDO_COLUMN,
- JDBCSQLTypeInfo.SHORT, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
+ DataTypeManager.DefaultDataTypes.SHORT, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
// logging
String logMsg = JDBCPlugin.Util.getString("MMDatabaseMetadata.Best_row_sucess", table); //$NON-NLS-1$
@@ -442,7 +421,7 @@
// HardCoding metadata details for TABLE_CAT column
metadataList[0] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.CATALOGS.TABLE_CAT,
- JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, driverConnection);
+ DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, driverConnection);
// logging
String logMsg = JDBCPlugin.Util.getString("MMDatabaseMetadata.Catalog_success"); //$NON-NLS-1$
@@ -486,21 +465,21 @@
Map[] metadataList = new Map[8];
metadataList[0] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.PRIVILEGES.TABLE_CAT,
- JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, driverConnection);
+ DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, driverConnection);
metadataList[1] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.PRIVILEGES.TABLE_SCHEM,
- JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, driverConnection);
+ DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, driverConnection);
metadataList[2] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.PRIVILEGES.TABLE_NAME,
- JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
+ DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
metadataList[3] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.PRIVILEGES.COLUMN_NAME,
- JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
+ DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
metadataList[4] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.PRIVILEGES.GRANTOR,
- JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, driverConnection);
+ DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, driverConnection);
metadataList[5] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.PRIVILEGES.GRANTEE,
- JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
+ DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
metadataList[6] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.PRIVILEGES.PRIVILEGE,
- JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
+ DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
metadataList[7] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.PRIVILEGES.IS_GRANTABLE,
- JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, driverConnection);
+ DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, driverConnection);
return dummyStatement().createResultSet(records, metadataList);
@@ -570,6 +549,24 @@
// get the value at the current index add it to currentRow
currentRow.add(results.getObject(i+1));
}
+ String typeName = (String)currentRow.get(JDBCColumnPositions.COLUMNS.TYPE_NAME-1);
+ Integer length = (Integer)currentRow.get(JDBCColumnPositions.COLUMNS.DATA_TYPE-1);
+ Integer precision = (Integer)currentRow.get(JDBCColumnPositions.COLUMNS.COLUMN_SIZE-1);
+ if (typeName != null) {
+ currentRow.set(JDBCColumnPositions.COLUMNS.DATA_TYPE-1, JDBCSQLTypeInfo.getSQLType(typeName));
+ if (DATATYPES_WITH_NO_PRECISION.contains(typeName)) {
+ if (length != null && length <= 0) {
+ currentRow.set(JDBCColumnPositions.COLUMNS.COLUMN_SIZE-1, JDBCSQLTypeInfo.getDefaultPrecision(typeName));
+ } else {
+ currentRow.set(JDBCColumnPositions.COLUMNS.COLUMN_SIZE-1, length);
+ }
+ } else if (precision != null && precision <= 0) {
+ currentRow.set(JDBCColumnPositions.COLUMNS.COLUMN_SIZE-1, JDBCSQLTypeInfo.getDefaultPrecision(typeName));
+ }
+ } else {
+ currentRow.set(JDBCColumnPositions.COLUMNS.DATA_TYPE-1, null);
+ currentRow.set(JDBCColumnPositions.COLUMNS.COLUMN_SIZE-1, null);
+ }
records.add(currentRow);
}// end of while
@@ -1179,7 +1176,20 @@
// get the value at the current index add it to currentRow
currentRow.add(results.getObject(i+1));
}
-
+ String typeName = (String)currentRow.get(JDBCColumnPositions.PROCEDURE_COLUMNS.TYPE_NAME-1);
+ Integer length = (Integer)currentRow.get(JDBCColumnPositions.PROCEDURE_COLUMNS.LENGTH-1);
+ Integer precision = (Integer)currentRow.get(JDBCColumnPositions.PROCEDURE_COLUMNS.PRECISION-1);
+ if (precision != null && precision <= 0) {
+ currentRow.set(JDBCColumnPositions.PROCEDURE_COLUMNS.PRECISION-1, JDBCSQLTypeInfo.getDefaultPrecision(typeName));
+ }
+ if (length != null && length <= 0) {
+ currentRow.set(JDBCColumnPositions.PROCEDURE_COLUMNS.LENGTH-1, JDBCSQLTypeInfo.getDefaultPrecision(typeName));
+ }
+ if (typeName != null) {
+ currentRow.set(JDBCColumnPositions.PROCEDURE_COLUMNS.DATA_TYPE-1, JDBCSQLTypeInfo.getSQLType(typeName));
+ } else {
+ currentRow.set(JDBCColumnPositions.PROCEDURE_COLUMNS.DATA_TYPE-1, null);
+ }
// add the current row to the list of records.
records.add(currentRow);
}// end of while
@@ -1319,19 +1329,19 @@
// HardCoding metadata details for TABLE_CAT column
metadataList[0] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.SUPER_TABLES.TABLE_CAT,
- JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, driverConnection);
+ DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, driverConnection);
// HardCoding metadata details for TABLE_SCHEM column
metadataList[1] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.SUPER_TABLES.TABLE_SCHEM,
- JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, driverConnection);
+ DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, driverConnection);
// HardCoding metadata details for TABLE_NAME column
metadataList[2] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.SUPER_TABLES.TABLE_NAME,
- JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
+ DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
// HardCoding metadata details for SUPERTABLE_NAME column
metadataList[3] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.SUPER_TABLES.SUPERTABLE_NAME,
- JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
+ DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
// construct results object from column values and their metadata
return dummyStatement().createResultSet(records, metadataList);
@@ -1357,27 +1367,27 @@
// HardCoding metadata details for TYPE_CAT column
metadataList[0] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.SUPER_TYPES.TYPE_CAT,
- JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, driverConnection);
+ DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, driverConnection);
// HardCoding metadata details for TYPE_SCHEM column
metadataList[1] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.SUPER_TYPES.TYPE_SCHEM,
- JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, driverConnection);
+ DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, driverConnection);
// HardCoding metadata details for TYPE_NAME column
metadataList[2] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.SUPER_TYPES.TYPE_NAME,
- JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
+ DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
// HardCoding metadata details for SUPERTYPE_CAT column
metadataList[3] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.SUPER_TYPES.SUPERTYPE_CAT,
- JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, driverConnection);
+ DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, driverConnection);
// HardCoding metadata details for SUPERTYPE_SCHEM column
metadataList[4] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.SUPER_TYPES.SUPERTYPE_SCHEM,
- JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, driverConnection);
+ DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, driverConnection);
// HardCoding metadata details for SUPERTYPE_NAME column
metadataList[5] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.SUPER_TYPES.SUPERTYPE_NAME,
- JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
+ DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
// construct results object from column values and their metadata
return dummyStatement().createResultSet(records, metadataList);
@@ -1395,19 +1405,19 @@
Map[] metadataList = new Map[7];
metadataList[0] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.PRIVILEGES.TABLE_CAT,
- JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, driverConnection);
+ DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, driverConnection);
metadataList[1] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.PRIVILEGES.TABLE_SCHEM,
- JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, driverConnection);
+ DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, driverConnection);
metadataList[2] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.PRIVILEGES.TABLE_NAME,
- JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
+ DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
metadataList[3] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.PRIVILEGES.GRANTOR,
- JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, driverConnection);
+ DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, driverConnection);
metadataList[4] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.PRIVILEGES.GRANTEE,
- JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
+ DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
metadataList[5] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.PRIVILEGES.PRIVILEGE,
- JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
+ DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
metadataList[6] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.PRIVILEGES.IS_GRANTABLE,
- JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, driverConnection);
+ DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, driverConnection);
return dummyStatement().createResultSet(records, metadataList);
@@ -1529,7 +1539,7 @@
Map[] metadataList = new Map[1];
metadataList[0] = StatementImpl.getColumnMetadata(null, JDBCColumnNames.TABLE_TYPES.TABLE_TYPE,
- JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
+ DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, driverConnection);
logger.fine(JDBCPlugin.Util.getString("MMDatabaseMetadata.getTableType_success")); //$NON-NLS-1$
@@ -1563,28 +1573,29 @@
records.add(Arrays.asList(createTypeInfoRow("timestamp", "{ts'", "}", Boolean.TRUE, Boolean.TRUE, 0))); //$NON-NLS-1$ //$NON-NLS-2$//$NON-NLS-3$
records.add(Arrays.asList(createTypeInfoRow("object", null, null, Boolean.TRUE, Boolean.TRUE, 0))); //$NON-NLS-1$
records.add(Arrays.asList(createTypeInfoRow("blob", null, null, Boolean.TRUE, Boolean.TRUE, 0))); //$NON-NLS-1$
+ records.add(Arrays.asList(createTypeInfoRow("varbinary", "X'", "'", Boolean.TRUE, Boolean.TRUE, 0))); //$NON-NLS-1$ //$NON-NLS-2$//$NON-NLS-3$
records.add(Arrays.asList(createTypeInfoRow("clob", null, null, Boolean.TRUE, Boolean.TRUE, 0))); //$NON-NLS-1$
Map[] metadataList = new Map[18];
- metadataList[0] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.TYPE_NAME, JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.FALSE, Boolean.FALSE, Boolean.FALSE, driverConnection);//$NON-NLS-1$
- metadataList[1] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.DATA_TYPE, JDBCSQLTypeInfo.INTEGER, ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE, driverConnection);//$NON-NLS-1$
- metadataList[2] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.PRECISION, JDBCSQLTypeInfo.INTEGER, ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE, driverConnection);//$NON-NLS-1$
- metadataList[3] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.LITERAL_PREFIX, JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE, driverConnection);//$NON-NLS-1$
- metadataList[4] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.LITERAL_SUFFIX, JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE, driverConnection);//$NON-NLS-1$
- metadataList[5] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.CREATE_PARAMS, JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE, driverConnection);//$NON-NLS-1$
- metadataList[6] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.NULLABLE, JDBCSQLTypeInfo.SHORT, ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE, driverConnection);//$NON-NLS-1$
- metadataList[7] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.CASE_SENSITIVE, JDBCSQLTypeInfo.BOOLEAN, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.FALSE, Boolean.FALSE, Boolean.TRUE, driverConnection);//$NON-NLS-1$
- metadataList[8] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.SEARCHABLE, JDBCSQLTypeInfo.SHORT, ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE, driverConnection);//$NON-NLS-1$
- metadataList[9] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.UNSIGNED_ATTRIBUTE, JDBCSQLTypeInfo.BOOLEAN, ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE, driverConnection);//$NON-NLS-1$
- metadataList[10] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.FIXED_PREC_SCALE, JDBCSQLTypeInfo.BOOLEAN, ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE, driverConnection);//$NON-NLS-1$
- metadataList[11] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.AUTOINCREMENT, JDBCSQLTypeInfo.BOOLEAN, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.FALSE, Boolean.TRUE, Boolean.TRUE, driverConnection);//$NON-NLS-1$
- metadataList[12] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.LOCAL_TYPE_NAME, JDBCSQLTypeInfo.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.FALSE, Boolean.FALSE, Boolean.FALSE, driverConnection);//$NON-NLS-1$
- metadataList[13] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.MINIMUM_SCALE, JDBCSQLTypeInfo.SHORT, ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE, driverConnection);//$NON-NLS-1$
- metadataList[14] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.MAXIMUM_SCALE, JDBCSQLTypeInfo.SHORT, ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE, driverConnection);//$NON-NLS-1$
- metadataList[15] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.SQL_DATA_TYPE, JDBCSQLTypeInfo.INTEGER, ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE, driverConnection);//$NON-NLS-1$
- metadataList[16] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.SQL_DATETIME_SUB, JDBCSQLTypeInfo.INTEGER, ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE, driverConnection);//$NON-NLS-1$
- metadataList[17] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.NUM_PREC_RADIX, JDBCSQLTypeInfo.INTEGER, ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.FALSE, Boolean.FALSE, Boolean.FALSE, driverConnection);//$NON-NLS-1$
+ metadataList[0] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.TYPE_NAME, DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.FALSE, Boolean.FALSE, Boolean.FALSE, driverConnection);//$NON-NLS-1$
+ metadataList[1] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.DATA_TYPE, DataTypeManager.DefaultDataTypes.INTEGER, ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE, driverConnection);//$NON-NLS-1$
+ metadataList[2] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.PRECISION, DataTypeManager.DefaultDataTypes.INTEGER, ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE, driverConnection);//$NON-NLS-1$
+ metadataList[3] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.LITERAL_PREFIX, DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE, driverConnection);//$NON-NLS-1$
+ metadataList[4] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.LITERAL_SUFFIX, DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE, driverConnection);//$NON-NLS-1$
+ metadataList[5] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.CREATE_PARAMS, DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE, driverConnection);//$NON-NLS-1$
+ metadataList[6] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.NULLABLE, DataTypeManager.DefaultDataTypes.SHORT, ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE, driverConnection);//$NON-NLS-1$
+ metadataList[7] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.CASE_SENSITIVE, DataTypeManager.DefaultDataTypes.BOOLEAN, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.FALSE, Boolean.FALSE, Boolean.TRUE, driverConnection);//$NON-NLS-1$
+ metadataList[8] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.SEARCHABLE, DataTypeManager.DefaultDataTypes.SHORT, ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE, driverConnection);//$NON-NLS-1$
+ metadataList[9] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.UNSIGNED_ATTRIBUTE, DataTypeManager.DefaultDataTypes.BOOLEAN, ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE, driverConnection);//$NON-NLS-1$
+ metadataList[10] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.FIXED_PREC_SCALE, DataTypeManager.DefaultDataTypes.BOOLEAN, ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE, driverConnection);//$NON-NLS-1$
+ metadataList[11] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.AUTOINCREMENT, DataTypeManager.DefaultDataTypes.BOOLEAN, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.FALSE, Boolean.TRUE, Boolean.TRUE, driverConnection);//$NON-NLS-1$
+ metadataList[12] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.LOCAL_TYPE_NAME, DataTypeManager.DefaultDataTypes.STRING, ResultsMetadataConstants.NULL_TYPES.NOT_NULL, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.FALSE, Boolean.FALSE, Boolean.FALSE, driverConnection);//$NON-NLS-1$
+ metadataList[13] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.MINIMUM_SCALE, DataTypeManager.DefaultDataTypes.SHORT, ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE, driverConnection);//$NON-NLS-1$
+ metadataList[14] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.MAXIMUM_SCALE, DataTypeManager.DefaultDataTypes.SHORT, ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE, driverConnection);//$NON-NLS-1$
+ metadataList[15] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.SQL_DATA_TYPE, DataTypeManager.DefaultDataTypes.INTEGER, ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE, driverConnection);//$NON-NLS-1$
+ metadataList[16] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.SQL_DATETIME_SUB, DataTypeManager.DefaultDataTypes.INTEGER, ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.TRUE, Boolean.TRUE, Boolean.FALSE, driverConnection);//$NON-NLS-1$
+ metadataList[17] = StatementImpl.getColumnMetadata(CoreConstants.SYSTEM_MODEL + "." + DATA_TYPES, JDBCColumnNames.TYPE_INFO.NUM_PREC_RADIX, DataTypeManager.DefaultDataTypes.INTEGER, ResultsMetadataConstants.NULL_TYPES.NULLABLE, ResultsMetadataConstants.SEARCH_TYPES.SEARCHABLE, Boolean.FALSE, Boolean.FALSE, Boolean.FALSE, driverConnection);//$NON-NLS-1$
ResultSetMetaData rmetadata = new ResultSetMetaDataImpl(new MetadataProvider(metadataList), null);
@@ -1595,7 +1606,7 @@
}
private Object[] createTypeInfoRow(String typeName, String prefix, String suffix, Boolean unsigned, Boolean fixedPrecScale, int radix){
- return new Object[] {typeName, new Integer(JDBCSQLTypeInfo.getSQLType(typeName)), ResultsMetadataDefaults.getDefaultPrecision(typeName), prefix, suffix, null, new Short((short)DatabaseMetaData.typeNullable), Boolean.FALSE, new Short((short)DatabaseMetaData.typeSearchable), unsigned, fixedPrecScale, Boolean.FALSE, typeName, new Short((short)0), new Short((short)255), null, null, new Integer(radix)};
+ return new Object[] {typeName, new Integer(JDBCSQLTypeInfo.getSQLType(typeName)), JDBCSQLTypeInfo.getDefaultPrecision(typeName), prefix, suffix, null, new Short((short)DatabaseMetaData.typeNullable), Boolean.FALSE, new Short((short)DatabaseMetaData.typeSearchable), unsigned, fixedPrecScale, Boolean.FALSE, typeName, new Short((short)0), new Short((short)255), null, null, new Integer(radix)};
}
/**
@@ -1630,13 +1641,13 @@
JDBCColumnNames.UDTS.BASE_TYPE
};
String[] dataTypes = new String[] {
- JDBCSQLTypeInfo.STRING,
- JDBCSQLTypeInfo.STRING,
- JDBCSQLTypeInfo.STRING,
- JDBCSQLTypeInfo.STRING,
- JDBCSQLTypeInfo.STRING,
- JDBCSQLTypeInfo.STRING,
- JDBCSQLTypeInfo.SHORT
+ DataTypeManager.DefaultDataTypes.STRING,
+ DataTypeManager.DefaultDataTypes.STRING,
+ DataTypeManager.DefaultDataTypes.STRING,
+ DataTypeManager.DefaultDataTypes.STRING,
+ DataTypeManager.DefaultDataTypes.STRING,
+ DataTypeManager.DefaultDataTypes.STRING,
+ DataTypeManager.DefaultDataTypes.SHORT
};
return dummyStatement().createResultSet(Collections.EMPTY_LIST, columnNames, dataTypes);
}
Modified: trunk/client/src/main/java/org/teiid/jdbc/PreparedStatementImpl.java
===================================================================
--- trunk/client/src/main/java/org/teiid/jdbc/PreparedStatementImpl.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/client/src/main/java/org/teiid/jdbc/PreparedStatementImpl.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -37,8 +37,6 @@
import java.util.TimeZone;
import java.util.TreeMap;
-import javax.sql.rowset.serial.SerialBlob;
-
import org.teiid.client.RequestMessage;
import org.teiid.client.RequestMessage.ResultsMode;
import org.teiid.client.RequestMessage.StatementType;
@@ -48,6 +46,7 @@
import org.teiid.core.TeiidProcessingException;
import org.teiid.core.types.BlobImpl;
import org.teiid.core.types.ClobImpl;
+import org.teiid.core.types.DataTypeManager;
import org.teiid.core.types.InputStreamFactory;
import org.teiid.core.types.JDBCSQLTypeInfo;
import org.teiid.core.types.Streamable;
@@ -298,7 +297,7 @@
}
public void setBytes(int parameterIndex, byte bytes[]) throws SQLException {
- setObject(parameterIndex, new SerialBlob(bytes));
+ setObject(parameterIndex, bytes);
}
public void setCharacterStream (int parameterIndex, java.io.Reader reader, int length) throws SQLException {
@@ -379,7 +378,7 @@
}
void setObject(Object parameterIndex, Object value, int targetJdbcType) throws SQLException {
- Object targetObject = null;
+ Object targetObject = value;
if(value == null) {
setObject(parameterIndex, null);
@@ -387,45 +386,61 @@
}
// get the java class name for the given JDBC type
- String javaClassName = JDBCSQLTypeInfo.getJavaClassName(targetJdbcType);
+ String typeName = JDBCSQLTypeInfo.getTypeName(targetJdbcType);
+ int typeCode = DataTypeManager.getTypeCode(DataTypeManager.getDataTypeClass(typeName));
// transform the value to the target datatype
- if (targetJdbcType == Types.JAVA_OBJECT) {
- targetObject = value;
- } else if(javaClassName.equalsIgnoreCase(JDBCSQLTypeInfo.STRING_CLASS)) {
- targetObject = DataTypeTransformer.getString(value);
- } else if(javaClassName.equalsIgnoreCase(JDBCSQLTypeInfo.CHAR_CLASS)) {
- targetObject = DataTypeTransformer.getCharacter(value);
- } else if(javaClassName.equalsIgnoreCase(JDBCSQLTypeInfo.INTEGER_CLASS)) {
- targetObject = DataTypeTransformer.getInteger(value);
- } else if(javaClassName.equalsIgnoreCase(JDBCSQLTypeInfo.BYTE_CLASS)) {
- targetObject = DataTypeTransformer.getByte(value);
- } else if(javaClassName.equalsIgnoreCase(JDBCSQLTypeInfo.SHORT_CLASS)) {
- targetObject = DataTypeTransformer.getShort(value);
- } else if(javaClassName.equalsIgnoreCase(JDBCSQLTypeInfo.LONG_CLASS)) {
- targetObject = DataTypeTransformer.getLong(value);
- } else if(javaClassName.equalsIgnoreCase(JDBCSQLTypeInfo.FLOAT_CLASS)) {
- targetObject = DataTypeTransformer.getFloat(value);
- } else if(javaClassName.equalsIgnoreCase(JDBCSQLTypeInfo.DOUBLE_CLASS)) {
- targetObject = DataTypeTransformer.getDouble(value);
- } else if(javaClassName.equalsIgnoreCase(JDBCSQLTypeInfo.BOOLEAN_CLASS)) {
- targetObject = DataTypeTransformer.getBoolean(value);
- } else if(javaClassName.equalsIgnoreCase(JDBCSQLTypeInfo.BIGDECIMAL_CLASS)) {
- targetObject = DataTypeTransformer.getBigDecimal(value);
- } else if(javaClassName.equalsIgnoreCase(JDBCSQLTypeInfo.TIMESTAMP_CLASS)) {
- targetObject = DataTypeTransformer.getTimestamp(value);
- } else if(javaClassName.equalsIgnoreCase(JDBCSQLTypeInfo.DATE_CLASS)) {
- targetObject = DataTypeTransformer.getDate(value);
- } else if(javaClassName.equalsIgnoreCase(JDBCSQLTypeInfo.TIME_CLASS)) {
- targetObject = DataTypeTransformer.getTime(value);
- } else if (javaClassName.equalsIgnoreCase(JDBCSQLTypeInfo.BLOB_CLASS)) {
- targetObject = DataTypeTransformer.getBlob(value);
- } else if (javaClassName.equalsIgnoreCase(JDBCSQLTypeInfo.CLOB_CLASS)) {
- targetObject = DataTypeTransformer.getClob(value);
- } else if (javaClassName.equalsIgnoreCase(JDBCSQLTypeInfo.XML_CLASS)) {
+ switch (typeCode) {
+ case DataTypeManager.DefaultTypeCodes.STRING:
+ targetObject = DataTypeTransformer.getString(value);
+ break;
+ case DataTypeManager.DefaultTypeCodes.CHAR:
+ targetObject = DataTypeTransformer.getCharacter(value);
+ break;
+ case DataTypeManager.DefaultTypeCodes.INTEGER:
+ targetObject = DataTypeTransformer.getInteger(value);
+ break;
+ case DataTypeManager.DefaultTypeCodes.BYTE:
+ targetObject = DataTypeTransformer.getByte(value);
+ break;
+ case DataTypeManager.DefaultTypeCodes.SHORT:
+ targetObject = DataTypeTransformer.getShort(value);
+ break;
+ case DataTypeManager.DefaultTypeCodes.LONG:
+ targetObject = DataTypeTransformer.getLong(value);
+ break;
+ case DataTypeManager.DefaultTypeCodes.FLOAT:
+ targetObject = DataTypeTransformer.getFloat(value);
+ break;
+ case DataTypeManager.DefaultTypeCodes.DOUBLE:
+ targetObject = DataTypeTransformer.getDouble(value);
+ break;
+ case DataTypeManager.DefaultTypeCodes.BOOLEAN:
+ targetObject = DataTypeTransformer.getBoolean(value);
+ break;
+ case DataTypeManager.DefaultTypeCodes.BIGDECIMAL:
+ targetObject = DataTypeTransformer.getBigDecimal(value);
+ break;
+ case DataTypeManager.DefaultTypeCodes.TIMESTAMP:
+ targetObject = DataTypeTransformer.getTimestamp(value);
+ break;
+ case DataTypeManager.DefaultTypeCodes.DATE:
+ targetObject = DataTypeTransformer.getDate(value);
+ break;
+ case DataTypeManager.DefaultTypeCodes.TIME:
+ targetObject = DataTypeTransformer.getTime(value);
+ break;
+ case DataTypeManager.DefaultTypeCodes.BLOB:
+ targetObject = DataTypeTransformer.getBlob(value);
+ break;
+ case DataTypeManager.DefaultTypeCodes.CLOB:
+ targetObject = DataTypeTransformer.getClob(value);
+ break;
+ case DataTypeManager.DefaultTypeCodes.XML:
targetObject = DataTypeTransformer.getSQLXML(value);
- } else {
- String msg = JDBCPlugin.Util.getString("MMPreparedStatement.Err_transform_obj"); //$NON-NLS-1$
- throw new TeiidSQLException(msg);
+ break;
+ case DataTypeManager.DefaultTypeCodes.VARBINARY:
+ targetObject = DataTypeTransformer.getBytes(value);
+ break;
}
setObject(parameterIndex, targetObject);
Modified: trunk/client/src/main/java/org/teiid/jdbc/ResultSetImpl.java
===================================================================
--- trunk/client/src/main/java/org/teiid/jdbc/ResultSetImpl.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/client/src/main/java/org/teiid/jdbc/ResultSetImpl.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -27,20 +27,7 @@
import java.io.Reader;
import java.math.BigDecimal;
import java.net.URL;
-import java.sql.Array;
-import java.sql.Blob;
-import java.sql.Clob;
-import java.sql.Date;
-import java.sql.NClob;
-import java.sql.Ref;
-import java.sql.ResultSet;
-import java.sql.ResultSetMetaData;
-import java.sql.RowId;
-import java.sql.SQLException;
-import java.sql.SQLWarning;
-import java.sql.SQLXML;
-import java.sql.Time;
-import java.sql.Timestamp;
+import java.sql.*;
import java.util.Calendar;
import java.util.List;
import java.util.Map;
@@ -59,6 +46,7 @@
import org.teiid.client.util.ResultsFuture;
import org.teiid.core.TeiidComponentException;
import org.teiid.core.TeiidProcessingException;
+import org.teiid.core.types.BinaryType;
import org.teiid.core.types.BlobImpl;
import org.teiid.core.types.BlobType;
import org.teiid.core.types.ClobImpl;
@@ -324,6 +312,10 @@
String val = (String)currentValue;
currentValue = val.substring(0, Math.min(maxFieldSize/2, val.length()));
}
+ else if (currentValue instanceof BinaryType) {
+ BinaryType val = (BinaryType)currentValue;
+ currentValue = val.getBytesDirect();
+ }
return currentValue;
}
Modified: trunk/client/src/main/java/org/teiid/jdbc/StatementImpl.java
===================================================================
--- trunk/client/src/main/java/org/teiid/jdbc/StatementImpl.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/client/src/main/java/org/teiid/jdbc/StatementImpl.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -44,13 +44,13 @@
import org.teiid.client.RequestMessage.ShowPlan;
import org.teiid.client.metadata.ParameterInfo;
import org.teiid.client.metadata.ResultsMetadataConstants;
-import org.teiid.client.metadata.ResultsMetadataDefaults;
import org.teiid.client.plan.Annotation;
import org.teiid.client.plan.PlanNode;
import org.teiid.client.util.ResultsFuture;
import org.teiid.core.TeiidComponentException;
import org.teiid.core.TeiidException;
import org.teiid.core.TeiidProcessingException;
+import org.teiid.core.types.DataTypeManager;
import org.teiid.core.types.JDBCSQLTypeInfo;
import org.teiid.core.types.SQLXMLImpl;
import org.teiid.core.util.SqlUtil;
@@ -503,7 +503,7 @@
records.add(row);
}
createResultSet(records, new String[] {"PLAN_TEXT", "PLAN_XML", "DEBUG_LOG"}, //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
- new String[] {JDBCSQLTypeInfo.CLOB, JDBCSQLTypeInfo.XML, JDBCSQLTypeInfo.CLOB});
+ new String[] {DataTypeManager.DefaultDataTypes.CLOB, DataTypeManager.DefaultDataTypes.XML, DataTypeManager.DefaultDataTypes.CLOB});
return booleanFuture(true);
}
if (show.equalsIgnoreCase("ANNOTATIONS")) { //$NON-NLS-1$
@@ -518,7 +518,7 @@
records.add(row);
}
createResultSet(records, new String[] {"CATEGORY", "PRIORITY", "ANNOTATION", "RESOLUTION"}, //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
- new String[] {JDBCSQLTypeInfo.STRING, JDBCSQLTypeInfo.STRING, JDBCSQLTypeInfo.STRING, JDBCSQLTypeInfo.STRING});
+ new String[] {DataTypeManager.DefaultDataTypes.STRING, DataTypeManager.DefaultDataTypes.STRING, DataTypeManager.DefaultDataTypes.STRING, DataTypeManager.DefaultDataTypes.STRING});
return booleanFuture(true);
}
if (show.equalsIgnoreCase("ALL")) { //$NON-NLS-1$
@@ -530,11 +530,11 @@
records.add(row);
}
createResultSet(records, new String[] {"NAME", "VALUE"}, //$NON-NLS-1$ //$NON-NLS-2$
- new String[] {JDBCSQLTypeInfo.STRING, JDBCSQLTypeInfo.STRING});
+ new String[] {DataTypeManager.DefaultDataTypes.STRING, DataTypeManager.DefaultDataTypes.STRING});
return booleanFuture(true);
}
List<List<String>> records = Collections.singletonList(Collections.singletonList(driverConnection.getExecutionProperties().getProperty(JDBCURL.getValidKey(show))));
- createResultSet(records, new String[] {show}, new String[] {JDBCSQLTypeInfo.STRING});
+ createResultSet(records, new String[] {show}, new String[] {DataTypeManager.DefaultDataTypes.STRING});
return booleanFuture(true);
}
}
@@ -1086,7 +1086,7 @@
metadataMap.put(ResultsMetadataConstants.GROUP_NAME, tableName);
metadataMap.put(ResultsMetadataConstants.ELEMENT_NAME, columnName);
metadataMap.put(ResultsMetadataConstants.DATA_TYPE, dataType);
- metadataMap.put(ResultsMetadataConstants.PRECISION, ResultsMetadataDefaults.getDefaultPrecision(dataType));
+ metadataMap.put(ResultsMetadataConstants.PRECISION, JDBCSQLTypeInfo.getDefaultPrecision(dataType));
metadataMap.put(ResultsMetadataConstants.RADIX, new Integer(10));
metadataMap.put(ResultsMetadataConstants.SCALE, new Integer(0));
metadataMap.put(ResultsMetadataConstants.AUTO_INCREMENTING, Boolean.FALSE);
@@ -1096,7 +1096,7 @@
metadataMap.put(ResultsMetadataConstants.SIGNED, signed);
metadataMap.put(ResultsMetadataConstants.WRITABLE, writable);
metadataMap.put(ResultsMetadataConstants.CURRENCY, Boolean.FALSE);
- metadataMap.put(ResultsMetadataConstants.DISPLAY_SIZE, ResultsMetadataDefaults.getMaxDisplaySize(dataType));
+ metadataMap.put(ResultsMetadataConstants.DISPLAY_SIZE, JDBCSQLTypeInfo.getMaxDisplaySize(dataType));
return metadataMap;
}
Modified: trunk/client/src/main/resources/org/teiid/jdbc/i18n.properties
===================================================================
--- trunk/client/src/main/resources/org/teiid/jdbc/i18n.properties 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/client/src/main/resources/org/teiid/jdbc/i18n.properties 2012-01-23 18:52:20 UTC (rev 3813)
@@ -24,7 +24,6 @@
DataTypeTransformer.Err_converting=Unable to transform the column value {0} to a {1}.
JDBC.Method_not_supported=This method is not supported.
-MMPreparedStatement.Err_transform_obj=Unable to transform the object into the target JDBC type.
MMCallableStatement.Param_not_found=Parameter {0} was not found.
MMConnection.Err_closing_stmts=Error trying to close statements on this connection.
MMConnection.Cant_use_closed_connection=Cannot perform operations on a closed connection.
Modified: trunk/client/src/test/java/org/teiid/client/TestBatchSerializer.java
===================================================================
--- trunk/client/src/test/java/org/teiid/client/TestBatchSerializer.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/client/src/test/java/org/teiid/client/TestBatchSerializer.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -34,6 +34,7 @@
import junit.framework.TestCase;
+import org.teiid.core.types.BinaryType;
import org.teiid.core.types.DataTypeManager;
import org.teiid.core.util.TimestampWithTimezone;
@@ -78,6 +79,7 @@
DataTypeManager.DefaultDataTypes.TIME,
DataTypeManager.DefaultDataTypes.TIMESTAMP,
DataTypeManager.DefaultDataTypes.OBJECT,
+ DataTypeManager.DefaultDataTypes.VARBINARY,
};
private static String sampleString(int length) {
char[] chars = new char[length];
@@ -92,7 +94,7 @@
for (int i = 0; i < rows; i++) {
java.util.Date d = new java.util.Date();
- int mod = i%14;
+ int mod = i%16;
Object[] data = { (mod == 0) ? null : new BigDecimal("" + i), //$NON-NLS-1$
(mod == 1) ? null : new BigInteger(Integer.toString(i)),
(mod == 2) ? null : ((i%2 == 0) ? Boolean.FALSE: Boolean.TRUE),
@@ -108,6 +110,7 @@
(mod == 12) ? null : TimestampWithTimezone.createTime(d),
(mod == 13) ? null : TimestampWithTimezone.createTimestamp(d),
(mod == 14) ? null : TimestampWithTimezone.createTimestamp(d),
+ (mod == 15) ? null : new BinaryType(new byte[] {(byte)i}),
};
batch[i] = Arrays.asList(data);
}
Modified: trunk/client/src/test/java/org/teiid/jdbc/TestAllResultsImpl.java
===================================================================
--- trunk/client/src/test/java/org/teiid/jdbc/TestAllResultsImpl.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/client/src/test/java/org/teiid/jdbc/TestAllResultsImpl.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -46,7 +46,7 @@
import org.teiid.client.ResultsMessage;
import org.teiid.client.util.ResultsFuture;
import org.teiid.core.TeiidProcessingException;
-import org.teiid.core.types.JDBCSQLTypeInfo;
+import org.teiid.core.types.DataTypeManager;
import org.teiid.core.util.TimestampWithTimezone;
import org.teiid.query.unittest.TimestampUtil;
@@ -696,7 +696,7 @@
}
@Test(expected=TeiidSQLException.class) public void testResultsMessageException() throws Exception {
- ResultsMessage resultsMsg = exampleMessage(exampleResults1(1), new String[] { "IntNum" }, new String[] { JDBCSQLTypeInfo.INTEGER }); //$NON-NLS-1$
+ ResultsMessage resultsMsg = exampleMessage(exampleResults1(1), new String[] { "IntNum" }, new String[] { DataTypeManager.DefaultDataTypes.INTEGER }); //$NON-NLS-1$
resultsMsg.setFinalRow(-1);
ResultsMessage next = new ResultsMessage();
next.setException(new Throwable());
@@ -769,8 +769,8 @@
private String[] dataTypes() {
String[] types = new String[2];
- types[0] = JDBCSQLTypeInfo.INTEGER;
- types[1] = JDBCSQLTypeInfo.STRING;
+ types[0] = DataTypeManager.DefaultDataTypes.INTEGER;
+ types[1] = DataTypeManager.DefaultDataTypes.STRING;
return types;
}
@@ -791,7 +791,7 @@
/** without metadata info. */
private ResultsMessage exampleResultsMsg1() {
- return exampleMessage(exampleResults1(5), new String[] { "IntNum" }, new String[] { JDBCSQLTypeInfo.INTEGER }); //$NON-NLS-1$
+ return exampleMessage(exampleResults1(5), new String[] { "IntNum" }, new String[] { DataTypeManager.DefaultDataTypes.INTEGER }); //$NON-NLS-1$
}
private ResultsMessage exampleMessage(List<Object>[] results, String[] columnNames, String[] datatypes) {
@@ -809,7 +809,7 @@
/** without metadata info. */
private ResultsMessage exampleResultsMsg2() {
- return exampleMessage(exampleResults2(), new String[] { "IntNum", "StringNum" }, new String[] { JDBCSQLTypeInfo.INTEGER, JDBCSQLTypeInfo.STRING }); //$NON-NLS-1$ //$NON-NLS-2$
+ return exampleMessage(exampleResults2(), new String[] { "IntNum", "StringNum" }, new String[] { DataTypeManager.DefaultDataTypes.INTEGER, DataTypeManager.DefaultDataTypes.STRING }); //$NON-NLS-1$ //$NON-NLS-2$
}
/** with limited metadata info. */
@@ -828,7 +828,7 @@
/** no rows. */
private ResultsMessage exampleResultsMsg3() {
- return exampleMessage(new List[0], new String[] { "IntNum", "StringNum" }, new String[] { JDBCSQLTypeInfo.INTEGER, JDBCSQLTypeInfo.STRING }); //$NON-NLS-1$ //$NON-NLS-2$
+ return exampleMessage(new List[0], new String[] { "IntNum", "StringNum" }, new String[] { DataTypeManager.DefaultDataTypes.INTEGER, DataTypeManager.DefaultDataTypes.STRING }); //$NON-NLS-1$ //$NON-NLS-2$
}
private static ResultsMessage exampleResultsMsg4(int begin, int length, boolean lastBatch) {
@@ -838,7 +838,7 @@
List[] results = exampleResults1(length, begin);
resultsMsg.setResults(results);
resultsMsg.setColumnNames(new String[] { "IntKey" }); //$NON-NLS-1$
- resultsMsg.setDataTypes(new String[] { JDBCSQLTypeInfo.INTEGER });
+ resultsMsg.setDataTypes(new String[] { DataTypeManager.DefaultDataTypes.INTEGER });
resultsMsg.setFirstRow(begin);
if (lastBatch) {
resultsMsg.setFinalRow(begin + results.length - 1);
@@ -865,7 +865,7 @@
ResultsMessage resultsMsg = new ResultsMessage();
resultsMsg.setResults(new List[] {Arrays.asList(new Timestamp(0))});
resultsMsg.setColumnNames(new String[] { "TS" }); //$NON-NLS-1$
- resultsMsg.setDataTypes(new String[] { JDBCSQLTypeInfo.TIMESTAMP });
+ resultsMsg.setDataTypes(new String[] { DataTypeManager.DefaultDataTypes.TIMESTAMP });
resultsMsg.setFirstRow(1);
resultsMsg.setFinalRow(1);
resultsMsg.setLastRow(1);
@@ -882,7 +882,7 @@
@Test public void testWasNull() throws SQLException{
ResultsMessage message = exampleMessage(new List[] { Arrays.asList((String)null), Arrays.asList("1") }, new String[] { "string" }, //$NON-NLS-1$
- new String[] { JDBCSQLTypeInfo.STRING });
+ new String[] { DataTypeManager.DefaultDataTypes.STRING });
ResultSetImpl rs = new ResultSetImpl(message, statement);
assertTrue(rs.next());
assertEquals(Boolean.FALSE.booleanValue(), rs.getBoolean(1));
@@ -909,7 +909,7 @@
TimeZone.setDefault(TimeZone.getTimeZone("GMT-05:00")); //$NON-NLS-1$
ResultsMessage message = exampleMessage(new List[] { Arrays.asList(1, TimestampUtil.createTime(0, 0, 0), TimestampUtil.createDate(1, 1, 1), TimestampUtil.createTimestamp(1, 1, 1, 1, 1, 1, 1), "<root/>") }, //$NON-NLS-1$
new String[] { "int", "time", "date", "timestamp", "sqlxml" }, //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$
- new String[] { JDBCSQLTypeInfo.INTEGER, JDBCSQLTypeInfo.TIME, JDBCSQLTypeInfo.DATE, JDBCSQLTypeInfo.TIMESTAMP, JDBCSQLTypeInfo.STRING });
+ new String[] { DataTypeManager.DefaultDataTypes.INTEGER, DataTypeManager.DefaultDataTypes.TIME, DataTypeManager.DefaultDataTypes.DATE, DataTypeManager.DefaultDataTypes.TIMESTAMP, DataTypeManager.DefaultDataTypes.STRING });
TimestampWithTimezone.resetCalendar(TimeZone.getTimeZone("GMT-06:00")); //$NON-NLS-1$
ResultSetImpl rs = new ResultSetImpl(message, statement);
assertTrue(rs.next());
Modified: trunk/client/src/test/java/org/teiid/jdbc/TestCallableStatement.java
===================================================================
--- trunk/client/src/test/java/org/teiid/jdbc/TestCallableStatement.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/client/src/test/java/org/teiid/jdbc/TestCallableStatement.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -38,7 +38,7 @@
import org.teiid.client.ResultsMessage;
import org.teiid.client.metadata.ParameterInfo;
import org.teiid.client.security.LogonResult;
-import org.teiid.core.types.JDBCSQLTypeInfo;
+import org.teiid.core.types.DataTypeManager;
import org.teiid.net.ServerConnection;
@SuppressWarnings("nls")
@@ -70,7 +70,7 @@
List<?>[] results = new List[] {Arrays.asList(null, null, null), Arrays.asList(null, 1, 2)};
resultsMsg.setResults(results);
resultsMsg.setColumnNames(new String[] { "IntNum", "Out1", "Out2" }); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
- resultsMsg.setDataTypes(new String[] { JDBCSQLTypeInfo.INTEGER, JDBCSQLTypeInfo.INTEGER, JDBCSQLTypeInfo.INTEGER });
+ resultsMsg.setDataTypes(new String[] { DataTypeManager.DefaultDataTypes.INTEGER, DataTypeManager.DefaultDataTypes.INTEGER, DataTypeManager.DefaultDataTypes.INTEGER });
resultsMsg.setFinalRow(results.length);
resultsMsg.setLastRow(results.length);
resultsMsg.setFirstRow(1);
Modified: trunk/client/src/test/java/org/teiid/jdbc/util/ResultSetUtil.java
===================================================================
--- trunk/client/src/test/java/org/teiid/jdbc/util/ResultSetUtil.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/client/src/test/java/org/teiid/jdbc/util/ResultSetUtil.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -261,7 +261,7 @@
StringWriter types = new StringWriter();
StringWriter columns = new StringWriter();
for (int i = 1; i <= count; i++) {
- String columnName = rsmd.getColumnName(i);
+ String columnName = rsmd.getColumnLabel(i);
String typeName = rsmd.getColumnTypeName(i);
if (maxColWidth == 0) {
// Sets the width of the column to the wider of the column name and the column type name.
@@ -553,7 +553,7 @@
private BufferedReader in;
private int line = 0;
- private ArrayList unequalLines = new ArrayList();
+ private ArrayList<String> unequalLines = new ArrayList<String>();
private ComparingPrintStream(OutputStream out, BufferedReader in) {
super(out);
@@ -645,14 +645,14 @@
try {
String expectedLine = in.readLine();
if (!bufferedLine.equals(expectedLine)) {
- unequalLines.add("\n" + new Integer(line) + ":" + bufferedLine );
+ unequalLines.add("\n" + line + " expected: " +expectedLine+ " but was: " + bufferedLine );
}
} catch (IOException e) {
}
}
- public List getUnequalLines() {
+ public List<String> getUnequalLines() {
return unequalLines;
}
}
Added: trunk/common-core/src/main/java/org/teiid/core/types/BinaryType.java
===================================================================
--- trunk/common-core/src/main/java/org/teiid/core/types/BinaryType.java (rev 0)
+++ trunk/common-core/src/main/java/org/teiid/core/types/BinaryType.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -0,0 +1,112 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * See the COPYRIGHT.txt file distributed with this work for information
+ * regarding copyright ownership. Some portions may be licensed
+ * to Red Hat, Inc. under one or more contributor license agreements.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ * 02110-1301 USA.
+ */
+
+package org.teiid.core.types;
+
+import java.util.Arrays;
+
+import javax.xml.bind.DatatypeConverter;
+
+import org.teiid.core.util.Assertion;
+
+public final class BinaryType implements Comparable<BinaryType> {
+
+ private byte[] bytes;
+
+ public BinaryType(byte[] bytes) {
+ Assertion.isNotNull(bytes);
+ //to be truly immutable we should clone here
+ this.bytes = bytes;
+ }
+
+ /**
+ *
+ * @return the actual bytes - no modifications should be performed
+ */
+ public byte[] getBytesDirect() {
+ return this.bytes;
+ }
+
+ /**
+ *
+ * @return a copy of the bytes
+ */
+ public byte[] getBytes() {
+ return Arrays.copyOf(bytes, bytes.length);
+ }
+
+ /**
+ * Get the byte value at a given index
+ * @param index
+ * @return
+ */
+ public byte getByte(int index) {
+ return bytes[index];
+ }
+
+ public int getLength() {
+ return bytes.length;
+ }
+
+ @Override
+ public int compareTo(BinaryType o) {
+ int len1 = getLength();
+ int len2 = o.getLength();
+ int n = Math.min(len1, len2);
+ for (int i = 0; i < n; i++) {
+ //unsigned comparison
+ int b1 = bytes[i] & 0xff;
+ int b2 = o.bytes[i] & 0xff;
+ if (b1 != b2) {
+ return b1 - b2;
+ }
+ }
+ return len1 - len2;
+ }
+
+ @Override
+ public int hashCode() {
+ return Arrays.hashCode(bytes);
+ }
+
+ @Override
+ public boolean equals(Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj instanceof BinaryType)) {
+ return false;
+ }
+ BinaryType other = (BinaryType)obj;
+ return Arrays.equals(this.bytes, other.bytes);
+ }
+
+ @Override
+ public String toString() {
+ return DatatypeConverter.printHexBinary(bytes);
+ }
+
+ public BlobType toBlob() {
+ return new BlobType(BlobType.createBlob(bytes));
+ }
+
+}
Property changes on: trunk/common-core/src/main/java/org/teiid/core/types/BinaryType.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Modified: trunk/common-core/src/main/java/org/teiid/core/types/DataTypeManager.java
===================================================================
--- trunk/common-core/src/main/java/org/teiid/core/types/DataTypeManager.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/common-core/src/main/java/org/teiid/core/types/DataTypeManager.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -190,6 +190,7 @@
public static final String BLOB = "blob"; //$NON-NLS-1$
public static final String CLOB = "clob"; //$NON-NLS-1$
public static final String XML = "xml"; //$NON-NLS-1$
+ public static final String VARBINARY = "varbinary"; //$NON-NLS-1$
}
public static final class DefaultDataClasses {
@@ -212,6 +213,7 @@
public static final Class<BlobType> BLOB = BlobType.class;
public static final Class<ClobType> CLOB = ClobType.class;
public static final Class<XMLType> XML = XMLType.class;
+ public static final Class<BinaryType> VARBINARY = BinaryType.class;
}
public static final class DefaultTypeCodes {
@@ -234,9 +236,10 @@
public static final int CLOB = 16;
public static final int XML = 17;
public static final int NULL = 18;
+ public static final int VARBINARY = 19;
}
- public static int MAX_TYPE_CODE = DefaultTypeCodes.NULL;
+ public static int MAX_TYPE_CODE = DefaultTypeCodes.VARBINARY;
private static final Map<Class<?>, Integer> typeMap = new LinkedHashMap<Class<?>, Integer>(64);
private static final List<Class<?>> typeList;
@@ -261,15 +264,24 @@
typeMap.put(DataTypeManager.DefaultDataClasses.CLOB, DefaultTypeCodes.CLOB);
typeMap.put(DataTypeManager.DefaultDataClasses.XML, DefaultTypeCodes.XML);
typeMap.put(DataTypeManager.DefaultDataClasses.NULL, DefaultTypeCodes.NULL);
+ typeMap.put(DataTypeManager.DefaultDataClasses.VARBINARY, DefaultTypeCodes.VARBINARY);
typeList = new ArrayList<Class<?>>(typeMap.keySet());
}
public static int getTypeCode(Class<?> source) {
- return typeMap.get(source).intValue();
+ Integer result = typeMap.get(source);
+ if (result == null) {
+ return DefaultTypeCodes.OBJECT;
+ }
+ return result;
}
public static Class<?> getClass(int code) {
- return typeList.get(code);
+ Class<?> result = typeList.get(code);
+ if (result == null) {
+ return DefaultDataClasses.OBJECT;
+ }
+ return result;
}
/**
@@ -568,6 +580,7 @@
DataTypeManager.addDataType(DefaultDataTypes.OBJECT, DefaultDataClasses.OBJECT);
DataTypeManager.addDataType(DefaultDataTypes.NULL, DefaultDataClasses.NULL);
DataTypeManager.addDataType(DefaultDataTypes.BLOB, DefaultDataClasses.BLOB);
+ DataTypeManager.addDataType(DefaultDataTypes.VARBINARY, DefaultDataClasses.VARBINARY);
DATA_TYPE_NAMES = Collections.unmodifiableSet(new LinkedHashSet<String>(dataTypeNames.keySet()));
dataTypeNames.put(DataTypeAliases.BIGINT, DefaultDataClasses.LONG);
dataTypeNames.put(DataTypeAliases.DECIMAL, DefaultDataClasses.BIG_DECIMAL);
@@ -600,8 +613,9 @@
valueMaps.put(DefaultDataClasses.DATE, new HashedValueCache<Date>(14));
valueMaps.put(DefaultDataClasses.TIME, new HashedValueCache<Time>(14));
valueMaps.put(DefaultDataClasses.TIMESTAMP, new HashedValueCache<Timestamp>(14));
- valueMaps.put(DefaultDataClasses.BIG_DECIMAL, new WeakReferenceHashedValueCache<BigDecimal>(16));
+ valueMaps.put(DefaultDataClasses.BIG_DECIMAL, new WeakReferenceHashedValueCache<BigDecimal>(17));
valueMaps.put(DefaultDataClasses.STRING, stringCache);
+ valueMaps.put(DefaultDataClasses.VARBINARY, new WeakReferenceHashedValueCache<BinaryType>(17));
}
}
@@ -727,8 +741,12 @@
DataTypeManager.addTransform(new org.teiid.core.types.basic.StringToCharacterTransform());
DataTypeManager.addTransform(new org.teiid.core.types.basic.StringToClobTransform());
DataTypeManager.addTransform(new org.teiid.core.types.basic.StringToSQLXMLTransform());
-
+
+ DataTypeManager.addTransform(new org.teiid.core.types.basic.BinaryToBlobTransform());
+
DataTypeManager.addTransform(new org.teiid.core.types.basic.ClobToStringTransform());
+
+ DataTypeManager.addTransform(new org.teiid.core.types.basic.BlobToBinaryTransform());
DataTypeManager.addTransform(new org.teiid.core.types.basic.SQLXMLToStringTransform());
@@ -752,28 +770,28 @@
}
static void loadSourceConversions() {
- sourceConverters.put(Clob.class, new SourceTransform<Clob, ClobType>() {
+ addSourceTransform(Clob.class, new SourceTransform<Clob, ClobType>() {
@Override
public ClobType transform(Clob value) {
return new ClobType(value);
}
});
- sourceConverters.put(char[].class, new SourceTransform<char[], ClobType>() {
+ addSourceTransform(char[].class, new SourceTransform<char[], ClobType>() {
@Override
public ClobType transform(char[] value) {
return new ClobType(ClobType.createClob(value));
}
});
- sourceConverters.put(Blob.class, new SourceTransform<Blob, BlobType>() {
+ addSourceTransform(Blob.class, new SourceTransform<Blob, BlobType>() {
@Override
public BlobType transform(Blob value) {
return new BlobType(value);
}
});
- addSourceTransform(byte[].class, new SourceTransform<byte[], BlobType>() {
+ addSourceTransform(byte[].class, new SourceTransform<byte[], BinaryType>() {
@Override
- public BlobType transform(byte[] value) {
- return new BlobType(BlobType.createBlob(value));
+ public BinaryType transform(byte[] value) {
+ return new BinaryType(value);
}
});
addSourceTransform(SQLXML.class, new SourceTransform<SQLXML, XMLType>() {
Modified: trunk/common-core/src/main/java/org/teiid/core/types/JDBCSQLTypeInfo.java
===================================================================
--- trunk/common-core/src/main/java/org/teiid/core/types/JDBCSQLTypeInfo.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/common-core/src/main/java/org/teiid/core/types/JDBCSQLTypeInfo.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -25,10 +25,11 @@
import java.sql.Blob;
import java.sql.Clob;
import java.sql.SQLXML;
-
import java.sql.Types;
import java.util.HashMap;
+import java.util.LinkedHashMap;
import java.util.Map;
+import java.util.Set;
/**
* <p> This is a helper class used to obtain SQL type information for java types.
@@ -37,99 +38,82 @@
*/
public final class JDBCSQLTypeInfo {
-
-
+
+ public static class TypeInfo {
+ String name;
+ int maxDisplaySize;
+ int defaultPrecision;
+ String javaClassName;
+ int[] jdbcTypes;
+
+ public TypeInfo(int maxDisplaySize, int precision, String name,
+ String javaClassName, int[] jdbcTypes) {
+ super();
+ this.maxDisplaySize = maxDisplaySize;
+ this.defaultPrecision = precision;
+ this.name = name;
+ this.javaClassName = javaClassName;
+ this.jdbcTypes = jdbcTypes;
+ }
+
+ }
+
// Prevent instantiation
private JDBCSQLTypeInfo() {}
-
- // metamatrix types
- public static final String STRING = DataTypeManager.DefaultDataTypes.STRING;
- public static final String BOOLEAN = DataTypeManager.DefaultDataTypes.BOOLEAN;
- public static final String TIME = DataTypeManager.DefaultDataTypes.TIME;
- public static final String DATE = DataTypeManager.DefaultDataTypes.DATE;
- public static final String TIMESTAMP = DataTypeManager.DefaultDataTypes.TIMESTAMP;
- public static final String INTEGER = DataTypeManager.DefaultDataTypes.INTEGER;
- public static final String FLOAT = DataTypeManager.DefaultDataTypes.FLOAT;
- public static final String DOUBLE = DataTypeManager.DefaultDataTypes.DOUBLE;
- public static final String BIGDECIMAL = DataTypeManager.DefaultDataTypes.BIG_DECIMAL;
- public static final String BIGINTEGER = DataTypeManager.DefaultDataTypes.BIG_INTEGER;
- public static final String BYTE = DataTypeManager.DefaultDataTypes.BYTE;
- public static final String SHORT = DataTypeManager.DefaultDataTypes.SHORT;
- public static final String LONG = DataTypeManager.DefaultDataTypes.LONG;
- public static final String CHAR = DataTypeManager.DefaultDataTypes.CHAR;
- public static final String OBJECT = DataTypeManager.DefaultDataTypes.OBJECT;
- public static final String CLOB = DataTypeManager.DefaultDataTypes.CLOB;
- public static final String BLOB = DataTypeManager.DefaultDataTypes.BLOB;
- public static final String XML = DataTypeManager.DefaultDataTypes.XML;
- public static final String NULL = DataTypeManager.DefaultDataTypes.NULL;
-
- //java class names
- public static final String STRING_CLASS = DataTypeManager.DefaultDataClasses.STRING.getName();
- public static final String BOOLEAN_CLASS = DataTypeManager.DefaultDataClasses.BOOLEAN.getName();
- public static final String TIME_CLASS = DataTypeManager.DefaultDataClasses.TIME.getName();
- public static final String DATE_CLASS = DataTypeManager.DefaultDataClasses.DATE.getName();
- public static final String TIMESTAMP_CLASS = DataTypeManager.DefaultDataClasses.TIMESTAMP.getName();
- public static final String INTEGER_CLASS = DataTypeManager.DefaultDataClasses.INTEGER.getName();
- public static final String FLOAT_CLASS = DataTypeManager.DefaultDataClasses.FLOAT.getName();
- public static final String DOUBLE_CLASS = DataTypeManager.DefaultDataClasses.DOUBLE.getName();
- public static final String BIGDECIMAL_CLASS = DataTypeManager.DefaultDataClasses.BIG_DECIMAL.getName();
- public static final String BYTE_CLASS = DataTypeManager.DefaultDataClasses.BYTE.getName();
- public static final String SHORT_CLASS = DataTypeManager.DefaultDataClasses.SHORT.getName();
- public static final String LONG_CLASS = DataTypeManager.DefaultDataClasses.LONG.getName();
- public static final String CHAR_CLASS = DataTypeManager.DefaultDataClasses.CHAR.getName();
- public static final String BIGINTEGER_CLASS = DataTypeManager.DefaultDataClasses.BIG_INTEGER.getName();
- public static final String OBJECT_CLASS = DataTypeManager.DefaultDataClasses.OBJECT.getName();
- public static final String CLOB_CLASS = Clob.class.getName();
- public static final String BLOB_CLASS = Blob.class.getName();
- public static final String XML_CLASS = SQLXML.class.getName();
-
- private static Map<String, Integer> NAME_TO_TYPE_MAP = new HashMap<String, Integer>();
- private static Map<Integer, String> TYPE_TO_NAME_MAP = new HashMap<Integer, String>();
- private static Map<String, String> NAME_TO_CLASSNAME = new HashMap<String, String>();
- private static Map<String, String> CLASSNAME_TO_NAME = new HashMap<String, String>();
-
+
+ public static final Integer DEFAULT_RADIX = 10;
+ public static final Integer DEFAULT_SCALE = 0;
+
+ // XML column constants
+ public final static Integer XML_COLUMN_LENGTH = Integer.MAX_VALUE;
+
+ private static Map<String, TypeInfo> NAME_TO_TYPEINFO = new LinkedHashMap<String, TypeInfo>();
+ private static Map<Integer, TypeInfo> TYPE_TO_TYPEINFO = new HashMap<Integer, TypeInfo>();
+ private static Map<String, TypeInfo> CLASSNAME_TO_TYPEINFO = new HashMap<String, TypeInfo>();
+
static {
- addTypeMapping(STRING, STRING_CLASS, Types.VARCHAR, Types.CHAR, Types.NVARCHAR, Types.NCHAR);
- addTypeMapping(CHAR, CHAR_CLASS, Types.CHAR, false);
- addTypeMapping(BOOLEAN, BOOLEAN_CLASS, Types.BIT, Types.BOOLEAN);
- addTypeMapping(TIME, TIME_CLASS, Types.TIME);
- addTypeMapping(DATE, DATE_CLASS, Types.DATE);
- addTypeMapping(TIMESTAMP, TIMESTAMP_CLASS, Types.TIMESTAMP);
- addTypeMapping(INTEGER, INTEGER_CLASS, Types.INTEGER);
- addTypeMapping(FLOAT, FLOAT_CLASS, Types.REAL);
- addTypeMapping(DOUBLE, DOUBLE_CLASS, Types.DOUBLE, Types.FLOAT);
- addTypeMapping(BIGDECIMAL, BIGDECIMAL_CLASS, Types.NUMERIC, Types.DECIMAL);
- addTypeMapping(BIGINTEGER, BIGINTEGER_CLASS, Types.NUMERIC, false);
- addTypeMapping(BYTE, BYTE_CLASS, Types.TINYINT);
- addTypeMapping(SHORT, SHORT_CLASS, Types.SMALLINT);
- addTypeMapping(LONG, LONG_CLASS, Types.BIGINT);
- addTypeMapping(OBJECT, OBJECT_CLASS, Types.JAVA_OBJECT);
- addTypeMapping(CLOB, CLOB_CLASS, Types.CLOB, Types.LONGVARCHAR, Types.LONGNVARCHAR, Types.NCLOB);
- addTypeMapping(BLOB, BLOB_CLASS, Types.BLOB, Types.BINARY, Types.VARBINARY, Types.LONGVARBINARY);
-
- addTypeMapping(NULL, null, Types.NULL);
-
- addTypeMapping(XML, XML_CLASS, Types.SQLXML);
+ //note the order in which these are added matters. if there are multiple sql type mappings (e.g. biginteger and bigdecimal to numeric), the latter will be the primary
+ addType(DataTypeManager.DefaultDataTypes.BIG_INTEGER, 20, 19, DataTypeManager.DefaultDataClasses.BIG_INTEGER.getName(), Types.NUMERIC);
+ addType(new String[] {DataTypeManager.DefaultDataTypes.BIG_DECIMAL, "decimal"}, 22, 20, DataTypeManager.DefaultDataClasses.BIG_DECIMAL.getName(), Types.NUMERIC, Types.DECIMAL); //$NON-NLS-1$
+ addType(DataTypeManager.DefaultDataTypes.BLOB, Integer.MAX_VALUE, Integer.MAX_VALUE, Blob.class.getName(), Types.BLOB, Types.LONGVARBINARY);
+ addType(DataTypeManager.DefaultDataTypes.BOOLEAN, 5, 1, DataTypeManager.DefaultDataClasses.BOOLEAN.getName(), Types.BIT, Types.BOOLEAN);
+ addType(new String[] {DataTypeManager.DefaultDataTypes.BYTE, "tinyint"}, 4, 3, DataTypeManager.DefaultDataClasses.BYTE.getName(), Types.TINYINT); //$NON-NLS-1$
+ addType(DataTypeManager.DefaultDataTypes.CHAR, 1, 1, DataTypeManager.DefaultDataClasses.CHAR.getName(), Types.CHAR);
+ addType(DataTypeManager.DefaultDataTypes.CLOB, Integer.MAX_VALUE, Integer.MAX_VALUE, Clob.class.getName(), Types.CLOB, Types.NCLOB, Types.LONGNVARCHAR, Types.LONGVARCHAR);
+ addType(DataTypeManager.DefaultDataTypes.DATE, 10, 10, DataTypeManager.DefaultDataClasses.DATE.getName(), Types.DATE);
+ addType(DataTypeManager.DefaultDataTypes.DOUBLE, 22, 20, DataTypeManager.DefaultDataClasses.DOUBLE.getName(), Types.DOUBLE, Types.FLOAT);
+ addType(new String[] {DataTypeManager.DefaultDataTypes.FLOAT, "real"}, 22, 20, DataTypeManager.DefaultDataClasses.FLOAT.getName(), Types.REAL); //$NON-NLS-1$
+ addType(DataTypeManager.DefaultDataTypes.INTEGER, 11, 10, DataTypeManager.DefaultDataClasses.INTEGER.getName(), Types.INTEGER);
+ addType(new String[] {DataTypeManager.DefaultDataTypes.LONG, "bigint"}, 20, 19, DataTypeManager.DefaultDataClasses.LONG.getName(), Types.BIGINT); //$NON-NLS-1$
+ addType(DataTypeManager.DefaultDataTypes.OBJECT, Integer.MAX_VALUE, Integer.MAX_VALUE, DataTypeManager.DefaultDataClasses.OBJECT.getName(), Types.JAVA_OBJECT);
+ addType(new String[] {DataTypeManager.DefaultDataTypes.SHORT, "smallint"}, 6, 5, DataTypeManager.DefaultDataClasses.SHORT.getName(), Types.SMALLINT); //$NON-NLS-1$
+ addType(new String[] {DataTypeManager.DefaultDataTypes.STRING, "varchar"}, DataTypeManager.MAX_STRING_LENGTH, DataTypeManager.MAX_STRING_LENGTH, DataTypeManager.DefaultDataClasses.STRING.getName(), Types.VARCHAR, Types.NVARCHAR, Types.CHAR, Types.NCHAR); //$NON-NLS-1$
+ addType(DataTypeManager.DefaultDataTypes.TIME, 8, 8, DataTypeManager.DefaultDataClasses.TIME.getName(), Types.TIME);
+ addType(DataTypeManager.DefaultDataTypes.TIMESTAMP, 29, 29, DataTypeManager.DefaultDataClasses.TIMESTAMP.getName(), Types.TIMESTAMP);
+ addType(DataTypeManager.DefaultDataTypes.XML, Integer.MAX_VALUE, Integer.MAX_VALUE, SQLXML.class.getName(), Types.SQLXML);
+ addType(DataTypeManager.DefaultDataTypes.NULL, 4, 1, null, Types.NULL);
+ addType(DataTypeManager.DefaultDataTypes.VARBINARY, DataTypeManager.MAX_LOB_MEMORY_BYTES, DataTypeManager.MAX_LOB_MEMORY_BYTES, byte[].class.getName(), Types.VARBINARY, Types.BINARY);
}
-
- private static void addTypeMapping(String typeName, String javaClass, int sqlType, int ... secondaryTypes) {
- addTypeMapping(typeName, javaClass, sqlType, true);
- for (int type : secondaryTypes) {
- TYPE_TO_NAME_MAP.put(type, typeName);
+
+ private static TypeInfo addType(String typeName, int maxDisplaySize, int precision, String javaClassName, int... sqlTypes) {
+ TypeInfo ti = new TypeInfo(maxDisplaySize, precision, typeName, javaClassName, sqlTypes);
+ NAME_TO_TYPEINFO.put(typeName, ti);
+ if (javaClassName != null) {
+ CLASSNAME_TO_TYPEINFO.put(javaClassName, ti);
}
+ for (int i : sqlTypes) {
+ TYPE_TO_TYPEINFO.put(i, ti);
+ }
+ return ti;
}
-
- private static void addTypeMapping(String typeName, String javaClass, int sqlType, boolean preferedType) {
- NAME_TO_TYPE_MAP.put(typeName, sqlType);
- if (preferedType) {
- TYPE_TO_NAME_MAP.put(sqlType, typeName);
+
+ private static void addType(String[] typeNames, int maxDisplaySize, int precision, String javaClassName, int... sqlTypes) {
+ TypeInfo ti = addType(typeNames[0], maxDisplaySize, precision, javaClassName, sqlTypes);
+ for (int i = 1; i < typeNames.length; i++) {
+ NAME_TO_TYPEINFO.put(typeNames[i], ti);
}
- if (javaClass != null) {
- NAME_TO_CLASSNAME.put(typeName, javaClass);
- CLASSNAME_TO_NAME.put(javaClass, typeName);
- }
}
-
+
/**
* This method is used to obtain a short indicating JDBC SQL type for any object.
* The short values that give the type info are from java.sql.Types.
@@ -142,13 +126,13 @@
return Types.NULL;
}
- Integer sqlType = NAME_TO_TYPE_MAP.get(typeName);
+ TypeInfo sqlType = NAME_TO_TYPEINFO.get(typeName);
if (sqlType == null) {
return Types.JAVA_OBJECT;
}
- return sqlType.intValue();
+ return sqlType.jdbcTypes[0];
}
/**
@@ -163,13 +147,13 @@
return Types.NULL;
}
- String name = CLASSNAME_TO_NAME.get(className);
+ TypeInfo sqlType = CLASSNAME_TO_TYPEINFO.get(className);
- if (name == null) {
+ if (sqlType == null) {
return Types.JAVA_OBJECT;
}
- return getSQLType(name);
+ return sqlType.jdbcTypes[0];
}
/**
@@ -199,46 +183,51 @@
* @return A String representing the java class name for the given SQL Type.
*/
public static final String getJavaClassName(int jdbcSQLType) {
- String className = NAME_TO_CLASSNAME.get(getTypeName(jdbcSQLType));
+ TypeInfo typeInfo = TYPE_TO_TYPEINFO.get(jdbcSQLType);
- if (className == null) {
- return OBJECT_CLASS;
+ if (typeInfo == null) {
+ return DataTypeManager.DefaultDataClasses.OBJECT.getName();
}
- return className;
+ return typeInfo.javaClassName;
}
public static final String getTypeName(int sqlType) {
- String name = TYPE_TO_NAME_MAP.get(sqlType);
+ TypeInfo typeInfo = TYPE_TO_TYPEINFO.get(sqlType);
- if (name == null) {
- return OBJECT;
+ if (typeInfo == null) {
+ return DataTypeManager.DefaultDataTypes.OBJECT;
}
- return name;
+ return typeInfo.name;
}
- public static String[] getMMTypeNames() {
- return new String[] {
- STRING,
- BOOLEAN,
- TIME,
- DATE,
- TIMESTAMP,
- INTEGER,
- FLOAT,
- DOUBLE,
- BIGDECIMAL,
- BIGINTEGER,
- BYTE,
- SHORT,
- LONG,
- CHAR,
- OBJECT,
- CLOB,
- BLOB,
- XML
- };
+ public static Set<String> getMMTypeNames() {
+ return NAME_TO_TYPEINFO.keySet();
}
+ public static Integer getMaxDisplaySize(Class<?> dataTypeClass) {
+ return getMaxDisplaySize(DataTypeManager.getDataTypeName(dataTypeClass));
+ }
+
+ public static Integer getMaxDisplaySize(String typeName) {
+ TypeInfo ti = NAME_TO_TYPEINFO.get(typeName);
+ if (ti == null) {
+ return null;
+ }
+ return ti.maxDisplaySize;
+ }
+
+ public static Integer getDefaultPrecision(Class<?> dataTypeClass) {
+ return getDefaultPrecision(DataTypeManager.getDataTypeName(dataTypeClass));
+ }
+
+ public static Integer getDefaultPrecision(String typeName) {
+ TypeInfo ti = NAME_TO_TYPEINFO.get(typeName);
+ if (ti == null) {
+ return null;
+ }
+ return ti.defaultPrecision;
+ }
+
}
Added: trunk/common-core/src/main/java/org/teiid/core/types/basic/BinaryToBlobTransform.java
===================================================================
--- trunk/common-core/src/main/java/org/teiid/core/types/basic/BinaryToBlobTransform.java (rev 0)
+++ trunk/common-core/src/main/java/org/teiid/core/types/basic/BinaryToBlobTransform.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -0,0 +1,61 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * See the COPYRIGHT.txt file distributed with this work for information
+ * regarding copyright ownership. Some portions may be licensed
+ * to Red Hat, Inc. under one or more contributor license agreements.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ * 02110-1301 USA.
+ */
+
+package org.teiid.core.types.basic;
+
+import org.teiid.core.types.BinaryType;
+import org.teiid.core.types.DataTypeManager;
+import org.teiid.core.types.Transform;
+import org.teiid.core.types.TransformationException;
+
+public class BinaryToBlobTransform extends Transform {
+
+ /**
+ * This method transforms a value of the source type into a value
+ * of the target type.
+ * @param value Incoming value of source type
+ * @return Outgoing value of target type
+ * @throws TransformationException if value is an incorrect input type or
+ * the transformation fails
+ */
+ public Object transformDirect(Object value) throws TransformationException {
+ BinaryType contents = (BinaryType)value;
+ return contents.toBlob();
+ }
+
+ /**
+ * Type of the incoming value.
+ * @return Source type
+ */
+ public Class<?> getSourceType() {
+ return DataTypeManager.DefaultDataClasses.VARBINARY;
+ }
+
+ /**
+ * Type of the outgoing value.
+ * @return Target type
+ */
+ public Class<?> getTargetType() {
+ return DataTypeManager.DefaultDataClasses.BLOB;
+ }
+
+}
Property changes on: trunk/common-core/src/main/java/org/teiid/core/types/basic/BinaryToBlobTransform.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: trunk/common-core/src/main/java/org/teiid/core/types/basic/BlobToBinaryTransform.java
===================================================================
--- trunk/common-core/src/main/java/org/teiid/core/types/basic/BlobToBinaryTransform.java (rev 0)
+++ trunk/common-core/src/main/java/org/teiid/core/types/basic/BlobToBinaryTransform.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -0,0 +1,76 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * See the COPYRIGHT.txt file distributed with this work for information
+ * regarding copyright ownership. Some portions may be licensed
+ * to Red Hat, Inc. under one or more contributor license agreements.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ * 02110-1301 USA.
+ */
+
+package org.teiid.core.types.basic;
+
+import java.io.IOException;
+import java.sql.SQLException;
+
+import org.teiid.core.CorePlugin;
+import org.teiid.core.types.BinaryType;
+import org.teiid.core.types.BlobType;
+import org.teiid.core.types.DataTypeManager;
+import org.teiid.core.types.Transform;
+import org.teiid.core.types.TransformationException;
+import org.teiid.core.util.ObjectConverterUtil;
+
+
+public class BlobToBinaryTransform extends Transform {
+
+ /**
+ * This method transforms a value of the source type into a value
+ * of the target type.
+ * @param value Incoming value of source type
+ * @return Outgoing value of target type
+ * @throws TransformationException if value is an incorrect input type or
+ * the transformation fails
+ */
+ public Object transformDirect(Object value) throws TransformationException {
+ BlobType source = (BlobType)value;
+
+ try {
+ byte[] bytes = ObjectConverterUtil.convertToByteArray(source.getBinaryStream(), DataTypeManager.MAX_LOB_MEMORY_BYTES, true);
+ return new BinaryType(bytes);
+ } catch (SQLException e) {
+ throw new TransformationException(e, CorePlugin.Util.getString("failed_convert", new Object[] {getSourceType().getName(), getTargetType().getName()})); //$NON-NLS-1$
+ } catch(IOException e) {
+ throw new TransformationException(e, CorePlugin.Util.getString("failed_convert", new Object[] {getSourceType().getName(), getTargetType().getName()})); //$NON-NLS-1$
+ }
+ }
+
+ /**
+ * @see org.teiid.core.types.Transform#isExplicit()
+ */
+ public boolean isExplicit() {
+ return true;
+ }
+
+ @Override
+ public Class<?> getSourceType() {
+ return DataTypeManager.DefaultDataClasses.BLOB;
+ }
+
+ @Override
+ public Class<?> getTargetType() {
+ return DataTypeManager.DefaultDataClasses.VARBINARY;
+ }
+}
Property changes on: trunk/common-core/src/main/java/org/teiid/core/types/basic/BlobToBinaryTransform.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Modified: trunk/common-core/src/main/java/org/teiid/core/types/basic/ClobToStringTransform.java
===================================================================
--- trunk/common-core/src/main/java/org/teiid/core/types/basic/ClobToStringTransform.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/common-core/src/main/java/org/teiid/core/types/basic/ClobToStringTransform.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -49,9 +49,9 @@
*/
public Object transformDirect(Object value) throws TransformationException {
ClobType source = (ClobType)value;
-
+ BufferedReader reader = null;
try {
- BufferedReader reader = new BufferedReader (source.getCharacterStream());
+ reader = new BufferedReader (source.getCharacterStream());
StringBuffer contents = new StringBuffer();
int chr = reader.read();
@@ -59,14 +59,19 @@
contents.append((char)chr);
chr = reader.read();
}
- reader.close();
return contents.toString();
-
} catch (SQLException e) {
throw new TransformationException(e, CorePlugin.Util.getString("failed_convert", new Object[] {getSourceType().getName(), getTargetType().getName()})); //$NON-NLS-1$
} catch(IOException e) {
throw new TransformationException(e, CorePlugin.Util.getString("failed_convert", new Object[] {getSourceType().getName(), getTargetType().getName()})); //$NON-NLS-1$
- }
+ } finally {
+ if (reader != null) {
+ try {
+ reader.close();
+ } catch (IOException e) {
+ }
+ }
+ }
}
/**
Modified: trunk/common-core/src/main/java/org/teiid/core/util/PropertiesUtils.java
===================================================================
--- trunk/common-core/src/main/java/org/teiid/core/util/PropertiesUtils.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/common-core/src/main/java/org/teiid/core/util/PropertiesUtils.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -61,87 +61,6 @@
}
/**
- * Returns a list of property names matching the given pattern. A '*' may be
- * given to match the pattern exactly up to the '*', then anything after.
- * Note: Should also implement matching with '?' which means match any single
- * char.
- * @param pattern The property name to match which may include a '*'.
- * @param props The properties to search.
- * @return The List of property names matching given pattern - may be empty
- * but never null.
- */
- public static List filter( String pattern, Properties props ) {
- boolean addAll = false;
- String searchStr = null;
- List propNames = new ArrayList();
- int globIndex = pattern.indexOf('*');
- if ( globIndex == -1 ) {
- searchStr = pattern;
- } else if ( globIndex == 0 ) {
- addAll = true;
- } else {
- searchStr = pattern.substring(0, globIndex);
- }
-
- Enumeration propNameEnum = props.propertyNames();
- while ( propNameEnum.hasMoreElements() ) {
- String name = (String) propNameEnum.nextElement();
- if ( name.startsWith(searchStr) || addAll ) {
- propNames.add(name);
- }
- }
-
- return propNames;
- }
-
-
- /**
- * Obtains from this source the list of all properties that match the pattern specified by the filter.
- * <p>
- * The filter is a string that may contain the '*' character as a wildcard one or more times
- * in the string. For example, the following filter:
- * <p>
- * <pre> *metamatrix.*</pre>
- * <p>
- * finds all properties that contain somewhere in the property name the string "metamatrix.".
- * @param filterPattern the string filter pattern that will be used to narrow the set of properties returned.
- * @param props The properties to search.
- * @return the enumeration of all of the property names of the primary source;
- * the enumeration may be empty if there is an error connecting to the property sources.
- */
- public static Properties getProperties(String filterPattern, Properties props) {
- Properties results = new Properties();
-
- boolean addAll = false;
- String searchStr = null;
- int globIndex = filterPattern.indexOf('*');
- if ( globIndex == -1 ) {
- searchStr = filterPattern;
- } else if ( globIndex == 0 ) {
- addAll = true;
- } else {
- searchStr = filterPattern.substring(0, globIndex);
- }
-
- Enumeration propNameEnum = props.propertyNames();
- while ( propNameEnum.hasMoreElements() ) {
- String name = (String) propNameEnum.nextElement();
- if ( name.startsWith(searchStr)) {
- Object value = props.get(name);
- if (value != null) {
- results.put(name.substring(searchStr.length()), value);
- }
- }
- else if (addAll) {
- results.put(name, props.get(name));
- }
- }
-
- return results;
- }
-
-
- /**
* Performs a correct deep clone of the properties object by capturing
* all properties in the default(s) and placing them directly into the
* new Properties object. If the input is an instance of
Modified: trunk/common-core/src/test/java/org/teiid/core/types/TestDataTypeManager.java
===================================================================
--- trunk/common-core/src/test/java/org/teiid/core/types/TestDataTypeManager.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/common-core/src/test/java/org/teiid/core/types/TestDataTypeManager.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -159,15 +159,13 @@
@Test public void testJDBCSQLTypeInfo() {
- String[] types = JDBCSQLTypeInfo.getMMTypeNames();
+ Set<String> types = JDBCSQLTypeInfo.getMMTypeNames();
- for (int i = 0; i < types.length; i++) {
- String type = types[i];
-
+ for (String type : types) {
assertEquals("Didn't get match for "+ type, JDBCSQLTypeInfo.getSQLType(type), JDBCSQLTypeInfo.getSQLTypeFromRuntimeType(DataTypeManager.getDataTypeClass(type))); //$NON-NLS-1$
//the classnames will not match the runtime types for xml, clob, blob
- if (!type.equalsIgnoreCase(DataTypeManager.DefaultDataTypes.XML) && !type.equalsIgnoreCase(DataTypeManager.DefaultDataTypes.CLOB) && !type.equalsIgnoreCase(DataTypeManager.DefaultDataTypes.BLOB)) {
+ if (!type.equalsIgnoreCase(DataTypeManager.DefaultDataTypes.NULL) && !type.equalsIgnoreCase(DataTypeManager.DefaultDataTypes.VARBINARY) && !type.equalsIgnoreCase(DataTypeManager.DefaultDataTypes.XML) && !type.equalsIgnoreCase(DataTypeManager.DefaultDataTypes.CLOB) && !type.equalsIgnoreCase(DataTypeManager.DefaultDataTypes.BLOB)) {
assertEquals("Didn't get match for "+ type, JDBCSQLTypeInfo.getSQLType(type), JDBCSQLTypeInfo.getSQLTypeFromClass(DataTypeManager.getDataTypeClass(type).getName())); //$NON-NLS-1$
}
}
Modified: trunk/connectors/translator-jdbc/src/main/java/org/teiid/translator/jdbc/JDBCExecutionFactory.java
===================================================================
--- trunk/connectors/translator-jdbc/src/main/java/org/teiid/translator/jdbc/JDBCExecutionFactory.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/connectors/translator-jdbc/src/main/java/org/teiid/translator/jdbc/JDBCExecutionFactory.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -46,6 +46,7 @@
import javax.sql.DataSource;
+import org.teiid.core.types.BinaryType;
import org.teiid.core.util.PropertiesUtils;
import org.teiid.language.*;
import org.teiid.language.Argument.Direction;
@@ -818,7 +819,9 @@
param = new Double(((Float)param).doubleValue());
} else if (TypeFacility.RUNTIME_TYPES.CHAR.equals(paramType)) {
param = ((Character)param).toString();
- }
+ } else if (paramType.equals(TypeFacility.RUNTIME_TYPES.VARBINARY)) {
+ param = ((BinaryType)param).getBytesDirect();
+ }
stmt.setObject(i, param, type);
}
Modified: trunk/engine/src/main/java/org/teiid/common/buffer/impl/SizeUtility.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/common/buffer/impl/SizeUtility.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/engine/src/main/java/org/teiid/common/buffer/impl/SizeUtility.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -31,6 +31,7 @@
import java.util.Map;
import java.util.Set;
+import org.teiid.core.types.BinaryType;
import org.teiid.core.types.DataTypeManager;
@@ -48,6 +49,7 @@
private static Set<Class<?>> VARIABLE_SIZE_TYPES = new HashSet<Class<?>>();
static {
SIZE_ESTIMATES.put(DataTypeManager.DefaultDataClasses.STRING, new int[] {100, 256});
+ SIZE_ESTIMATES.put(DataTypeManager.DefaultDataClasses.VARBINARY, new int[] {100, 256});
SIZE_ESTIMATES.put(DataTypeManager.DefaultDataClasses.DATE, new int[] {20, 28});
SIZE_ESTIMATES.put(DataTypeManager.DefaultDataClasses.TIME, new int[] {20, 28});
SIZE_ESTIMATES.put(DataTypeManager.DefaultDataClasses.TIMESTAMP, new int[] {20, 28});
@@ -64,6 +66,7 @@
SIZE_ESTIMATES.put(DataTypeManager.DefaultDataClasses.BIG_INTEGER, new int[] {75, 100});
SIZE_ESTIMATES.put(DataTypeManager.DefaultDataClasses.BIG_DECIMAL, new int[] {150, 200});
VARIABLE_SIZE_TYPES.add(DataTypeManager.DefaultDataClasses.STRING);
+ VARIABLE_SIZE_TYPES.add(DataTypeManager.DefaultDataClasses.VARBINARY);
VARIABLE_SIZE_TYPES.add(DataTypeManager.DefaultDataClasses.OBJECT);
VARIABLE_SIZE_TYPES.add(DataTypeManager.DefaultDataClasses.BIG_INTEGER);
VARIABLE_SIZE_TYPES.add(DataTypeManager.DefaultDataClasses.BIG_DECIMAL);
@@ -130,6 +133,12 @@
return alignMemory(40 + (2 * length));
}
return 40;
+ } else if(type == DataTypeManager.DefaultDataClasses.VARBINARY) {
+ int length = ((BinaryType)obj).getLength();
+ if (length > 0) {
+ return alignMemory(16 + length);
+ }
+ return 16;
} else if(type == DataTypeManager.DefaultDataClasses.BIG_DECIMAL) {
if (!updateEstimate) {
return bigDecimalEstimate;
Modified: trunk/engine/src/main/java/org/teiid/core/id/UUID.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/core/id/UUID.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/engine/src/main/java/org/teiid/core/id/UUID.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -167,5 +167,9 @@
}
return this.cachedExportableFormUuidString;
}
+
+ public static void main(String[] args) {
+ System.out.println(new UUID(java.util.UUID.randomUUID()));
+ }
}
Modified: trunk/engine/src/main/java/org/teiid/dqp/internal/process/DQPWorkContext.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/dqp/internal/process/DQPWorkContext.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/engine/src/main/java/org/teiid/dqp/internal/process/DQPWorkContext.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -51,19 +51,26 @@
private static final long serialVersionUID = -6389893410233192977L;
public enum Version {
- SEVEN_1("7.1"), //$NON-NLS-1$
- SEVEN_2("7.2"), //$NON-NLS-1$
- SEVEN_3("7.3"), //$NON-NLS-1$
- SEVEN_4("7.4"), //$NON-NLS-1$
- SEVEN_5("7.5"), //$NON-NLS-1$
- SEVEN_6("7.6"); //$NON-NLS-1$
+ SEVEN_1("7.1", (byte)0), //$NON-NLS-1$
+ SEVEN_2("7.2", (byte)0), //$NON-NLS-1$
+ SEVEN_3("7.3", (byte)0), //$NON-NLS-1$
+ SEVEN_4("7.4", (byte)0), //$NON-NLS-1$
+ SEVEN_5("7.5", (byte)0), //$NON-NLS-1$
+ SEVEN_6("7.6", (byte)0), //$NON-NLS-1$
+ EIGHT_0("8.0", (byte)1); //$NON-NLS-1$
private String string;
+ private byte clientSerializationVersion;
- private Version(String string) {
+ private Version(String string, byte clientSerializationVersion) {
this.string = string;
+ this.clientSerializationVersion = clientSerializationVersion;
}
+ public byte getClientSerializationVersion() {
+ return clientSerializationVersion;
+ }
+
@Override
public String toString() {
return string;
Modified: trunk/engine/src/main/java/org/teiid/dqp/internal/process/MetaDataProcessor.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/dqp/internal/process/MetaDataProcessor.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/engine/src/main/java/org/teiid/dqp/internal/process/MetaDataProcessor.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -34,10 +34,10 @@
import org.teiid.api.exception.query.QueryResolverException;
import org.teiid.client.metadata.MetadataResult;
import org.teiid.client.metadata.ResultsMetadataConstants;
-import org.teiid.client.metadata.ResultsMetadataDefaults;
import org.teiid.core.TeiidComponentException;
import org.teiid.core.TeiidProcessingException;
import org.teiid.core.types.DataTypeManager;
+import org.teiid.core.types.JDBCSQLTypeInfo;
import org.teiid.core.types.XMLType;
import org.teiid.dqp.internal.process.DQPCore.ClientState;
import org.teiid.dqp.internal.process.DQPWorkContext.Version;
@@ -76,6 +76,8 @@
*/
public class MetaDataProcessor {
+ public final static String XML_COLUMN_NAME = "xml"; //$NON-NLS-1$
+
// Resources
private DQPCore requestManager;
private QueryMetadataInterface metadata;
@@ -248,10 +250,10 @@
private Map createXMLColumnMetadata(Query xmlCommand) {
GroupSymbol doc = xmlCommand.getFrom().getGroups().get(0);
- Map xmlMetadata = getDefaultColumn(doc.getName(), ResultsMetadataDefaults.XML_COLUMN_NAME, XMLType.class);
+ Map xmlMetadata = getDefaultColumn(doc.getName(), XML_COLUMN_NAME, XMLType.class);
// Override size as XML may be big
- xmlMetadata.put(ResultsMetadataConstants.DISPLAY_SIZE, ResultsMetadataDefaults.XML_COLUMN_LENGTH);
+ xmlMetadata.put(ResultsMetadataConstants.DISPLAY_SIZE, JDBCSQLTypeInfo.XML_COLUMN_LENGTH);
return xmlMetadata;
}
@@ -364,7 +366,7 @@
return precision;
}
}
- return ResultsMetadataDefaults.getDefaultPrecision(dataType).intValue();
+ return JDBCSQLTypeInfo.getDefaultPrecision(dataType).intValue();
}
/**
@@ -416,7 +418,7 @@
}
}
// else BOOLEAN, DATE, TIME, TIMESTAMP, CHARACTER use max
- return ResultsMetadataDefaults.getMaxDisplaySize(dataType);
+ return JDBCSQLTypeInfo.getMaxDisplaySize(dataType);
}
public Map<Integer, Object> getDefaultColumn(String tableName, String columnName,
@@ -441,12 +443,12 @@
column.put(ResultsMetadataConstants.WRITABLE, Boolean.TRUE);
column.put(ResultsMetadataConstants.CURRENCY, Boolean.FALSE);
column.put(ResultsMetadataConstants.DATA_TYPE, DataTypeManager.getDataTypeName(javaType));
- column.put(ResultsMetadataConstants.RADIX, ResultsMetadataDefaults.DEFAULT_RADIX);
- column.put(ResultsMetadataConstants.SCALE, ResultsMetadataDefaults.DEFAULT_SCALE);
+ column.put(ResultsMetadataConstants.RADIX, JDBCSQLTypeInfo.DEFAULT_RADIX);
+ column.put(ResultsMetadataConstants.SCALE, JDBCSQLTypeInfo.DEFAULT_SCALE);
column.put(ResultsMetadataConstants.SIGNED, Boolean.TRUE);
- column.put(ResultsMetadataConstants.PRECISION, ResultsMetadataDefaults.getDefaultPrecision(javaType));
- column.put(ResultsMetadataConstants.DISPLAY_SIZE, ResultsMetadataDefaults.getMaxDisplaySize(javaType));
+ column.put(ResultsMetadataConstants.PRECISION, JDBCSQLTypeInfo.getDefaultPrecision(javaType));
+ column.put(ResultsMetadataConstants.DISPLAY_SIZE, JDBCSQLTypeInfo.getMaxDisplaySize(javaType));
return column;
}
Modified: trunk/engine/src/main/java/org/teiid/dqp/internal/process/RequestWorkItem.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/dqp/internal/process/RequestWorkItem.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/engine/src/main/java/org/teiid/dqp/internal/process/RequestWorkItem.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -52,7 +52,6 @@
import org.teiid.core.types.DataTypeManager;
import org.teiid.dqp.internal.process.DQPCore.CompletionListener;
import org.teiid.dqp.internal.process.DQPCore.FutureWork;
-import org.teiid.dqp.internal.process.DQPWorkContext.Version;
import org.teiid.dqp.internal.process.SessionAwareCache.CacheID;
import org.teiid.dqp.internal.process.ThreadReuseExecutor.PrioritizedRunnable;
import org.teiid.dqp.message.AtomicRequestID;
@@ -714,7 +713,7 @@
dataTypes[i] = DataTypeManager.getDataTypeName(symbol.getType());
}
ResultsMessage result = new ResultsMessage(batch, columnNames, dataTypes);
- result.setClientSerializationVersion((byte)(this.dqpWorkContext.getClientVersion().compareTo(Version.SEVEN_6) >= 0?1:0));
+ result.setClientSerializationVersion(this.dqpWorkContext.getClientVersion().getClientSerializationVersion());
setAnalysisRecords(result);
return result;
}
Modified: trunk/engine/src/main/java/org/teiid/query/function/FunctionDescriptor.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/function/FunctionDescriptor.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/engine/src/main/java/org/teiid/query/function/FunctionDescriptor.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -29,6 +29,7 @@
import org.teiid.api.exception.query.FunctionExecutionException;
import org.teiid.core.TeiidRuntimeException;
+import org.teiid.core.types.BinaryType;
import org.teiid.core.types.DataTypeManager;
import org.teiid.core.types.TransformationException;
import org.teiid.core.util.PropertiesUtils;
@@ -53,6 +54,7 @@
private FunctionMethod method;
private String schema; //TODO: remove me - we need to create a proper schema for udf and system functions
private Object metadataID;
+ private boolean hasWrappedArgs;
// This is transient as it would be useless to invoke this method in
// a different VM. This function descriptor can be used to look up
@@ -72,6 +74,10 @@
this.method = method;
}
+ public void setHasWrappedArgs(boolean hasWrappedArgs) {
+ this.hasWrappedArgs = hasWrappedArgs;
+ }
+
public String getSchema() {
return schema;
}
@@ -180,20 +186,27 @@
// If descriptor is missing invokable method, find this VM's descriptor
// give name and types from fd
- Method method = getInvocationMethod();
- if(method == null) {
+ if(invocationMethod == null) {
throw new FunctionExecutionException("ERR.015.001.0002", QueryPlugin.Util.getString("ERR.015.001.0002", getName())); //$NON-NLS-1$ //$NON-NLS-2$
}
// Invoke the method and return the result
try {
+ if (hasWrappedArgs) {
+ for (int i = 0; i < values.length; i++) {
+ Object val = values[i];
+ if (val != null && types[i] == DataTypeManager.DefaultDataClasses.VARBINARY) {
+ values[i] = ((BinaryType)val).getBytesDirect();
+ }
+ }
+ }
if (method.isVarArgs()) {
- int i = method.getParameterTypes().length;
+ int i = invocationMethod.getParameterTypes().length;
Object[] newValues = Arrays.copyOf(values, i);
newValues[i - 1] = Arrays.copyOfRange(values, i - 1, values.length);
values = newValues;
}
- Object result = method.invoke(null, values);
+ Object result = invocationMethod.invoke(null, values);
return importValue(result, getReturnType());
} catch(ArithmeticException e) {
throw new FunctionExecutionException(e, "ERR.015.001.0003", QueryPlugin.Util.getString("ERR.015.001.0003", getName())); //$NON-NLS-1$ //$NON-NLS-2$
Modified: trunk/engine/src/main/java/org/teiid/query/function/FunctionTree.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/function/FunctionTree.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/engine/src/main/java/org/teiid/query/function/FunctionTree.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -26,10 +26,10 @@
import java.lang.reflect.Method;
import java.lang.reflect.Modifier;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.Collection;
import java.util.HashMap;
import java.util.HashSet;
-import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.Set;
@@ -94,7 +94,7 @@
public FunctionTree(String name, FunctionMetadataSource source, boolean validateClass, ClassLoader defaultClassloader) {
// Load data structures
this.validateClass = validateClass;
-
+ boolean system = CoreConstants.SYSTEM_MODEL.equalsIgnoreCase(name) || CoreConstants.SYSTEM_ADMIN_MODEL.equalsIgnoreCase(name);
Collection<FunctionMethod> functions = source.getFunctionMethods();
for (FunctionMethod method : functions) {
if (!containsIndistinguishableFunction(method)){
@@ -102,7 +102,7 @@
method.setClassloader(defaultClassloader);
}
// Add to tree
- addFunction(name, source, method);
+ addFunction(name, source, method, system);
} else if (!CoreConstants.SYSTEM_MODEL.equalsIgnoreCase(name)) {
LogManager.logWarning(LogConstants.CTX_FUNCTION_TREE, QueryPlugin.Util.gs(QueryPlugin.Event.TEIID30011, new Object[]{method}));
}
@@ -196,7 +196,7 @@
* @param source The function metadata source, which knows how to obtain the invocation class
* @param method The function metadata for a particular method signature
*/
- public FunctionDescriptor addFunction(String schema, FunctionMetadataSource source, FunctionMethod method) {
+ public FunctionDescriptor addFunction(String schema, FunctionMetadataSource source, FunctionMethod method, boolean system) {
String categoryKey = method.getCategory();
if (categoryKey == null) {
method.setCategory(FunctionCategoryConstants.MISCELLANEOUS);
@@ -216,20 +216,19 @@
// Get input types for path
List<FunctionParameter> inputParams = method.getInputParameters();
- List<Class<?>> inputTypes = new LinkedList<Class<?>>();
+ Class<?>[] types = null;
if(inputParams != null) {
+ types = new Class<?>[inputParams.size()];
for(int i=0; i<inputParams.size(); i++) {
String typeName = inputParams.get(i).getType();
- inputTypes.add(DataTypeManager.getDataTypeClass(typeName));
+ Class<?> clazz = DataTypeManager.getDataTypeClass(typeName);
+ types[i] = clazz;
}
+ } else {
+ types = new Class<?>[0];
}
- Class<?>[] types = inputTypes.toArray(new Class[inputTypes.size()]);
- if (method.isVarArgs()) {
- inputTypes.set(inputTypes.size() - 1, Array.newInstance(inputTypes.get(inputTypes.size() - 1), 0).getClass());
- }
-
- FunctionDescriptor descriptor = createFunctionDescriptor(source, method, inputTypes, types);
+ FunctionDescriptor descriptor = createFunctionDescriptor(source, method, types, system);
descriptor.setSchema(schema);
// Store this path in the function tree
@@ -282,13 +281,26 @@
private FunctionDescriptor createFunctionDescriptor(
FunctionMetadataSource source, FunctionMethod method,
- List<Class<?>> inputTypes, Class<?>[] types) {
+ Class<?>[] types, boolean system) {
// Get return type
FunctionParameter outputParam = method.getOutputParameter();
Class<?> outputType = null;
if(outputParam != null) {
outputType = DataTypeManager.getDataTypeClass(outputParam.getType());
}
+ List<Class<?>> inputTypes = new ArrayList<Class<?>>(Arrays.asList(types));
+ boolean hasWrappedArg = false;
+ if (!system) {
+ for (int i = 0; i < types.length; i++) {
+ if (types[i] == DataTypeManager.DefaultDataClasses.VARBINARY) {
+ hasWrappedArg = true;
+ inputTypes.set(i, byte[].class);
+ }
+ }
+ }
+ if (method.isVarArgs()) {
+ inputTypes.set(inputTypes.size() - 1, Array.newInstance(inputTypes.get(inputTypes.size() - 1), 0).getClass());
+ }
Method invocationMethod = null;
boolean requiresContext = false;
@@ -329,11 +341,11 @@
throw new TeiidRuntimeException("ERR.015.001.0047", QueryPlugin.Util.getString("FunctionTree.not_static", method.getName(), invocationMethod)); //$NON-NLS-1$ //$NON-NLS-2$
}
}
- } else {
- inputTypes.add(0, CommandContext.class);
}
- return new FunctionDescriptor(method, types, outputType, invocationMethod, requiresContext);
+ FunctionDescriptor result = new FunctionDescriptor(method, types, outputType, invocationMethod, requiresContext);
+ result.setHasWrappedArgs(hasWrappedArg);
+ return result;
}
/**
Modified: trunk/engine/src/main/java/org/teiid/query/metadata/BasicQueryMetadataWrapper.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/metadata/BasicQueryMetadataWrapper.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/engine/src/main/java/org/teiid/query/metadata/BasicQueryMetadataWrapper.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -186,21 +186,6 @@
return actualMetadata.getMinimumValue(elementID);
}
- public String getModeledBaseType(Object elementID)
- throws TeiidComponentException, QueryMetadataException {
- return actualMetadata.getModeledBaseType(elementID);
- }
-
- public String getModeledPrimitiveType(Object elementID)
- throws TeiidComponentException, QueryMetadataException {
- return actualMetadata.getModeledPrimitiveType(elementID);
- }
-
- public String getModeledType(Object elementID)
- throws TeiidComponentException, QueryMetadataException {
- return actualMetadata.getModeledType(elementID);
- }
-
public Object getModelID(Object groupOrElementID)
throws TeiidComponentException, QueryMetadataException {
return actualMetadata.getModelID(groupOrElementID);
Modified: trunk/engine/src/main/java/org/teiid/query/metadata/QueryMetadataInterface.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/metadata/QueryMetadataInterface.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/engine/src/main/java/org/teiid/query/metadata/QueryMetadataInterface.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -562,42 +562,6 @@
throws TeiidComponentException, QueryMetadataException;
/**
- * Get the design-time model type of the element specified. This element
- * identifier was previously returned by some other method.
- * @param elementID Element identifier
- * @return Modeled type name
- * @throws QueryMetadataException Metadata implementation detected a problem during the request
- * @throws TeiidComponentException Unexpected internal system problem during request
- * @since 5.0
- */
- String getModeledType(Object elementID)
- throws TeiidComponentException, QueryMetadataException;
-
- /**
- * Get the design-time model base type of the element specified. This element
- * identifier was previously returned by some other method.
- * @param elementID Element identifier
- * @return Modeled base type name
- * @throws QueryMetadataException Metadata implementation detected a problem during the request
- * @throws TeiidComponentException Unexpected internal system problem during request
- * @since 5.0
- */
- String getModeledBaseType(Object elementID)
- throws TeiidComponentException, QueryMetadataException;
-
- /**
- * Get the design-time model primitive type of the element specified. This element
- * identifier was previously returned by some other method.
- * @param elementID Element identifier
- * @return Modeled primitive type name
- * @throws QueryMetadataException Metadata implementation detected a problem during the request
- * @throws TeiidComponentException Unexpected internal system problem during request
- * @since 5.0
- */
- String getModeledPrimitiveType(Object elementID)
- throws TeiidComponentException, QueryMetadataException;
-
- /**
* Determine whether this is a procedure
* @param groupID Group identifier
* @return True if it is an procedure; false otherwise
Modified: trunk/engine/src/main/java/org/teiid/query/metadata/TempMetadataAdapter.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/metadata/TempMetadataAdapter.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/engine/src/main/java/org/teiid/query/metadata/TempMetadataAdapter.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -664,60 +664,6 @@
return actualMetadata.isProcedure(elementID);
}
- /**
- * @see org.teiid.query.metadata.QueryMetadataInterface#getModeledType(java.lang.Object)
- * @since 5.0
- */
- public String getModeledType(Object elementID) throws TeiidComponentException,
- QueryMetadataException {
-
- if (elementID instanceof TempMetadataID) {
- TempMetadataID id = (TempMetadataID)elementID;
- elementID = id.getOriginalMetadataID();
- if (elementID == null) {
- return null;
- }
- }
-
- return actualMetadata.getModeledType(elementID);
- }
-
- /**
- * @see org.teiid.query.metadata.QueryMetadataInterface#getModeledBaseType(java.lang.Object)
- * @since 5.0
- */
- public String getModeledBaseType(Object elementID) throws TeiidComponentException,
- QueryMetadataException {
-
- if (elementID instanceof TempMetadataID) {
- TempMetadataID id = (TempMetadataID)elementID;
- elementID = id.getOriginalMetadataID();
- if (elementID == null) {
- return null;
- }
- }
-
- return actualMetadata.getModeledBaseType(elementID);
- }
-
- /**
- * @see org.teiid.query.metadata.QueryMetadataInterface#getModeledPrimitiveType(java.lang.Object)
- * @since 5.0
- */
- public String getModeledPrimitiveType(Object elementID) throws TeiidComponentException,
- QueryMetadataException {
-
- if (elementID instanceof TempMetadataID) {
- TempMetadataID id = (TempMetadataID)elementID;
- elementID = id.getOriginalMetadataID();
- if (elementID == null) {
- return null;
- }
- }
-
- return actualMetadata.getModeledPrimitiveType(elementID);
- }
-
public boolean isTemporaryTable(Object groupID) throws TeiidComponentException, QueryMetadataException {
if(groupID instanceof TempMetadataID) {
return ((TempMetadataID)groupID).isTempTable();
Modified: trunk/engine/src/main/java/org/teiid/query/metadata/TransformationMetadata.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/metadata/TransformationMetadata.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/engine/src/main/java/org/teiid/query/metadata/TransformationMetadata.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -49,7 +49,15 @@
import org.teiid.core.util.LRUCache;
import org.teiid.core.util.ObjectConverterUtil;
import org.teiid.core.util.StringUtil;
-import org.teiid.metadata.*;
+import org.teiid.metadata.AbstractMetadataRecord;
+import org.teiid.metadata.Column;
+import org.teiid.metadata.ColumnSet;
+import org.teiid.metadata.ForeignKey;
+import org.teiid.metadata.KeyRecord;
+import org.teiid.metadata.Procedure;
+import org.teiid.metadata.ProcedureParameter;
+import org.teiid.metadata.Schema;
+import org.teiid.metadata.Table;
import org.teiid.metadata.BaseColumn.NullType;
import org.teiid.metadata.Column.SearchType;
import org.teiid.metadata.ProcedureParameter.Type;
@@ -1022,52 +1030,6 @@
return paths.toArray(new String[paths.size()]);
}
- /**
- * @see org.teiid.query.metadata.QueryMetadataInterface#getModeledType(java.lang.Object)
- * @since 5.0
- */
- public String getModeledType(final Object elementID) throws TeiidComponentException, QueryMetadataException {
- Datatype record = getDatatypeRecord(elementID);
- if (record != null) {
- return record.getDatatypeID();
- }
- return null;
- }
-
- /**
- * @see org.teiid.query.metadata.QueryMetadataInterface#getModeledBaseType(java.lang.Object)
- * @since 5.0
- */
- public String getModeledBaseType(final Object elementID) throws TeiidComponentException, QueryMetadataException {
- Datatype record = getDatatypeRecord(elementID);
- if (record != null) {
- return record.getBasetypeID();
- }
- return null;
- }
-
- /**
- * @see org.teiid.query.metadata.QueryMetadataInterface#getModeledPrimitiveType(java.lang.Object)
- * @since 5.0
- */
- public String getModeledPrimitiveType(final Object elementID) throws TeiidComponentException, QueryMetadataException {
- Datatype record = getDatatypeRecord(elementID);
- if (record != null) {
- return record.getPrimitiveTypeID();
- }
- return null;
- }
-
- private Datatype getDatatypeRecord(final Object elementID) {
- if (elementID instanceof Column) {
- return ((Column)elementID).getDatatype();
- } else if (elementID instanceof ProcedureParameter) {
- return ((ProcedureParameter)elementID).getDatatype();
- } else {
- throw createInvalidRecordTypeException(elementID);
- }
- }
-
@Override
public Object addToMetadataCache(Object metadataID, String key, Object value) {
ArgCheck.isInstanceOf(AbstractMetadataRecord.class, metadataID);
Modified: trunk/engine/src/main/java/org/teiid/query/processor/relational/DependentCriteriaProcessor.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/processor/relational/DependentCriteriaProcessor.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/engine/src/main/java/org/teiid/query/processor/relational/DependentCriteriaProcessor.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -103,7 +103,7 @@
int distinctCount = 0;
while (vi.hasNext()) {
Comparable next = (Comparable) vi.next();
- if (last == null || next.compareTo(last) != 0) {
+ if (last == null || Constant.compare(next, last) != 0) {
distinctCount++;
}
last = next;
Modified: trunk/engine/src/main/java/org/teiid/query/sql/symbol/Constant.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/sql/symbol/Constant.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/engine/src/main/java/org/teiid/query/sql/symbol/Constant.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -180,7 +180,7 @@
* @return Hash code, based on value
*/
public int hashCode() {
- if(this.value != null) {
+ if(this.value != null && !isMultiValued()) {
if (this.value instanceof BigDecimal) {
BigDecimal bd = (BigDecimal)this.value;
int xsign = bd.signum();
@@ -235,11 +235,12 @@
*/
public final static int compare(Comparable o1, Comparable o2) {
if (DataTypeManager.PAD_SPACE) {
- if (o1 instanceof String) {
+ Class<?> clazz = o1.getClass();
+ if (clazz == String.class) {
CharSequence s1 = (CharSequence)o1;
CharSequence s2 = (CharSequence)o2;
return comparePadded(s1, s2);
- } else if (o1 instanceof ClobType) {
+ } else if (clazz == ClobType.class) {
CharSequence s1 = ((ClobType)o1).getCharSequence();
CharSequence s2 = ((ClobType)o2).getCharSequence();
return comparePadded(s1, s2);
@@ -258,13 +259,10 @@
char c1 = s1.charAt(i);
char c2 = s2.charAt(i);
if (c1 != c2) {
- result = c1 - c2;
- break;
+ return c1 - c2;
}
}
- if (result == 0 && len1 != len2) {
- result = len1 - len2;
- }
+ result = len1 - len2;
for (int j = i; j < len1; j++) {
if (s1.charAt(j) != ' ') {
return result;
Modified: trunk/engine/src/main/java/org/teiid/query/sql/visitor/SQLStringVisitor.java
===================================================================
--- trunk/engine/src/main/java/org/teiid/query/sql/visitor/SQLStringVisitor.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/engine/src/main/java/org/teiid/query/sql/visitor/SQLStringVisitor.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -1152,6 +1152,8 @@
constantParts = new String[] {"{t'", obj.getValue().toString(), "'}"}; //$NON-NLS-1$ //$NON-NLS-2$
} else if (type.equals(DataTypeManager.DefaultDataClasses.DATE)) {
constantParts = new String[] {"{d'", obj.getValue().toString(), "'}"}; //$NON-NLS-1$ //$NON-NLS-2$
+ } else if (type.equals(DataTypeManager.DefaultDataClasses.VARBINARY)) {
+ constantParts = new String[] {"X'", obj.getValue().toString(), "'"}; //$NON-NLS-1$ //$NON-NLS-2$
}
if (constantParts == null) {
String strValue = obj.getValue().toString();
Modified: trunk/engine/src/main/javacc/org/teiid/query/parser/SQLParser.jj
===================================================================
--- trunk/engine/src/main/javacc/org/teiid/query/parser/SQLParser.jj 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/engine/src/main/javacc/org/teiid/query/parser/SQLParser.jj 2012-01-23 18:52:20 UTC (rev 3813)
@@ -77,6 +77,7 @@
TOKEN: /* Data types */
{
<STRING: "string">
+| <VARBINARY: "varbinary">
| <VARCHAR: "varchar">
| <BOOLEAN: "boolean">
| <BYTE: "byte">
@@ -398,7 +399,8 @@
| < STRINGVAL: (("N"|"E")? "'" ( ("''") | ~["'"] )* "'") >
| < #LETTER: (["a"-"z","A"-"Z"] | ["\u0153"-"\ufffd"]) >
| < #DIGIT: ["0"-"9"] >
-
+| < BINARYSTRINGVAL: ("X"|"x" "'" ( <HEXIT><HEXIT> )+ "'") >
+| < #HEXIT: (["a"-"f","A"-"F"] | <DIGIT> ) >
}
TOKEN : /* Punctuation */
@@ -3916,6 +3918,7 @@
typeToken = <OBJECT> |
typeToken = <BLOB> |
typeToken = <CLOB> |
+ typeToken = <VARBINARY> |
typeToken = <XML>
)
@@ -4013,6 +4016,7 @@
throw new ParseException(QueryPlugin.Util.getString("SQLParser.decimal_parse", params)); //$NON-NLS-1$
}
} |
+ t=<BINARYSTRINGVAL> { constant = new Constant(new BinaryType(javax.xml.bind.DatatypeConverter.parseHexBinary(t.image.substring(2, t.image.length() - 1))), DataTypeManager.DefaultDataClasses.VARBINARY); } |
t=<FALSE> { constant = new Constant(Boolean.FALSE, DataTypeManager.DefaultDataClasses.BOOLEAN); } |
t=<TRUE> { constant = new Constant(Boolean.TRUE, DataTypeManager.DefaultDataClasses.BOOLEAN); } |
t=<UNKNOWN> { constant = new Constant(null, DataTypeManager.DefaultDataClasses.BOOLEAN); } |
Modified: trunk/engine/src/test/java/org/teiid/common/buffer/impl/TestSizeUtility.java
===================================================================
--- trunk/engine/src/test/java/org/teiid/common/buffer/impl/TestSizeUtility.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/engine/src/test/java/org/teiid/common/buffer/impl/TestSizeUtility.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -34,6 +34,7 @@
import java.util.List;
import org.junit.Test;
+import org.teiid.core.types.BinaryType;
import org.teiid.core.types.DataTypeManager;
public class TestSizeUtility {
@@ -144,7 +145,7 @@
@Test public void testGetSizeByteArray() {
byte[] bytes = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
- helpTestGetSize(bytes, 32);
+ helpTestGetSize(new BinaryType(bytes), 32);
}
@Test public void testResultSet() {
Modified: trunk/engine/src/test/java/org/teiid/query/function/TestFunctionTree.java
===================================================================
--- trunk/engine/src/test/java/org/teiid/query/function/TestFunctionTree.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/engine/src/test/java/org/teiid/query/function/TestFunctionTree.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -22,9 +22,7 @@
package org.teiid.query.function;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
+import static org.junit.Assert.*;
import java.util.Arrays;
import java.util.Collection;
@@ -32,11 +30,12 @@
import org.junit.Test;
import org.mockito.Mockito;
import org.teiid.core.TeiidRuntimeException;
+import org.teiid.core.types.BinaryType;
import org.teiid.core.types.DataTypeManager;
import org.teiid.metadata.FunctionMethod;
import org.teiid.metadata.FunctionParameter;
+import org.teiid.metadata.FunctionMethod.Determinism;
import org.teiid.metadata.FunctionMethod.PushDown;
-import org.teiid.metadata.FunctionMethod.Determinism;
import org.teiid.query.function.metadata.FunctionCategoryConstants;
import org.teiid.query.function.source.SystemSource;
import org.teiid.query.unittest.RealMetadataFactory;
@@ -71,6 +70,10 @@
return null;
}
+ public static String toString(byte[] bytes) {
+ return new String(bytes);
+ }
+
@Test public void testLoadErrors() {
FunctionMethod method = new FunctionMethod(
"dummy", null, null, PushDown.CAN_PUSHDOWN, "nonexistentClass", "noMethod", //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
@@ -147,6 +150,19 @@
FunctionTree ft = new FunctionTree("foo", fms);
assertEquals(1, ft.getFunctionForms(FunctionCategoryConstants.MISCELLANEOUS).size());
}
+
+ @Test public void testVarbinary() throws Exception {
+ FunctionMethod method = new FunctionMethod(
+ "dummy", null, null, PushDown.CANNOT_PUSHDOWN, TestFunctionTree.class.getName(), "toString", //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ new FunctionParameter[] {new FunctionParameter("in", DataTypeManager.DefaultDataTypes.VARBINARY)}, //$NON-NLS-1$
+ new FunctionParameter("output", DataTypeManager.DefaultDataTypes.STRING), //$NON-NLS-1$
+ false, Determinism.DETERMINISTIC);
+ FunctionTree sys = RealMetadataFactory.SFM.getSystemFunctions();
+ FunctionLibrary fl = new FunctionLibrary(sys, new FunctionTree("foo", new UDFSource(Arrays.asList(method)), true));
+ FunctionDescriptor fd = fl.findFunction("dummy", new Class<?>[] {DataTypeManager.DefaultDataClasses.VARBINARY});
+ String hello = "hello";
+ assertEquals(hello, fd.invokeFunction(new Object[] {new BinaryType(hello.getBytes())}));
+ }
/*
Modified: trunk/engine/src/test/java/org/teiid/query/parser/TestParser.java
===================================================================
--- trunk/engine/src/test/java/org/teiid/query/parser/TestParser.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/engine/src/test/java/org/teiid/query/parser/TestParser.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -5205,7 +5205,13 @@
@Test public void testExactFixedPoint() throws QueryParserException {
Query actualCommand = (Query)QueryParser.getQueryParser().parseCommand("SELECT 1.1", new ParseInfo());
- assertEquals(DataTypeManager.DefaultDataClasses.BIG_DECIMAL, ((Expression)actualCommand.getSelect().getSymbol(0)).getType());
+ assertEquals(DataTypeManager.DefaultDataClasses.BIG_DECIMAL, actualCommand.getSelect().getSymbol(0).getType());
}
+
+ @Test public void testBinaryStringLiteral() throws QueryParserException {
+ Query actualCommand = (Query)QueryParser.getQueryParser().parseCommand("SELECT x'AABBCC0a'", new ParseInfo());
+ assertEquals(DataTypeManager.DefaultDataClasses.VARBINARY, actualCommand.getSelect().getSymbol(0).getType());
+ assertEquals("SELECT X'AABBCC0A'", actualCommand.toString());
+ }
}
Modified: trunk/engine/src/test/java/org/teiid/query/processor/TestProcessor.java
===================================================================
--- trunk/engine/src/test/java/org/teiid/query/processor/TestProcessor.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/engine/src/test/java/org/teiid/query/processor/TestProcessor.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -7677,5 +7677,16 @@
helpProcess(plan, cc, hdm, expected);
}
+ @Test public void testVarbinary() {
+ ProcessorPlan plan = helpGetPlan("select cast(to_chars(X'2b21', 'ascii') as string)", RealMetadataFactory.example1Cached());
+ helpProcess(plan, new FakeDataManager(), new List<?>[] {Arrays.asList("+!")});
+ }
+
+ @Test public void testVarbinaryOrderBy() {
+ ProcessorPlan plan = helpGetPlan("select cast(to_chars(x, 'ascii') as string) from (select X'3132' as x union all select X'2b21') as y order by x", RealMetadataFactory.example1Cached());
+ helpProcess(plan, new FakeDataManager(), new List<?>[] {Arrays.asList("+!"), Arrays.asList("12")});
+ }
+
+
private static final boolean DEBUG = false;
}
Modified: trunk/engine/src/test/java/org/teiid/query/sql/symbol/TestConstant.java
===================================================================
--- trunk/engine/src/test/java/org/teiid/query/sql/symbol/TestConstant.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/engine/src/test/java/org/teiid/query/sql/symbol/TestConstant.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -28,7 +28,7 @@
import org.teiid.core.types.DataTypeManager;
import org.teiid.core.util.UnitTestUtil;
-
+ at SuppressWarnings("nls")
public class TestConstant {
// ################################## TEST HELPERS ################################
Deleted: trunk/metadata/DATATYPES.INDEX
===================================================================
(Binary files differ)
Modified: trunk/metadata/src/main/java/org/teiid/metadata/index/IndexMetadataFactory.java
===================================================================
--- trunk/metadata/src/main/java/org/teiid/metadata/index/IndexMetadataFactory.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/metadata/src/main/java/org/teiid/metadata/index/IndexMetadataFactory.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -22,8 +22,12 @@
package org.teiid.metadata.index;
+import java.io.BufferedReader;
import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
import java.net.URISyntaxException;
+import java.nio.charset.Charset;
import java.util.*;
import org.jboss.vfs.VirtualFile;
@@ -33,6 +37,7 @@
import org.teiid.core.TeiidException;
import org.teiid.core.TeiidRuntimeException;
import org.teiid.core.index.IEntryResult;
+import org.teiid.core.util.PropertiesUtils;
import org.teiid.core.util.StringUtil;
import org.teiid.internal.core.index.Index;
import org.teiid.metadata.*;
@@ -159,7 +164,7 @@
addEntriesPlusVisibilities(vdb, new VDBMetaData());
}
- Map<String, AbstractMetadataRecord> getByType(char type) {
+ Map<String, AbstractMetadataRecord> getByType(char type) {
LinkedHashMap<String, AbstractMetadataRecord> uuidMap = allRecords.get(type);
if (uuidMap == null) {
uuidMap = new LinkedHashMap<String, AbstractMetadataRecord>();
@@ -208,6 +213,29 @@
public MetadataStore getMetadataStore(Collection<Datatype> systemDatatypes) throws IOException {
if (this.store == null) {
this.store = new MetadataStore();
+ if (systemDatatypes == null) {
+ InputStream is = this.getClass().getClassLoader().getResourceAsStream("org/teiid/metadata/types.dat"); //$NON-NLS-1$
+ try {
+ InputStreamReader isr = new InputStreamReader(is, Charset.forName("UTF-8")); //$NON-NLS-1$
+ BufferedReader br = new BufferedReader(isr);
+ String s = br.readLine();
+ String[] props = s.split("\\|"); //$NON-NLS-1$
+ while ((s = br.readLine()) != null) {
+ Datatype dt = new Datatype();
+ String[] vals = s.split("\\|"); //$NON-NLS-1$
+ Properties p = new Properties();
+ for (int i = 0; i < props.length; i++) {
+ if (vals[i].length() != 0) {
+ p.setProperty(props[i], new String(vals[i]));
+ }
+ }
+ PropertiesUtils.setBeanProperties(dt, p, null);
+ this.store.addDatatype(dt);
+ }
+ } finally {
+ is.close();
+ }
+ }
ArrayList<Index> tmp = new ArrayList<Index>();
for (VirtualFile f : indexFiles) {
Index index = new Index(f, true);
@@ -221,14 +249,18 @@
index.close();
}
Map<String, AbstractMetadataRecord> uuidToRecord = getByType(MetadataConstants.RECORD_TYPE.DATATYPE);
- for (AbstractMetadataRecord datatypeRecordImpl : uuidToRecord.values()) {
- this.store.addDatatype((Datatype) datatypeRecordImpl);
- }
if (systemDatatypes != null) {
for (Datatype datatype : systemDatatypes) {
uuidToRecord.put(datatype.getUUID(), datatype);
}
+ } else {
+ for (Datatype datatype : this.store.getDatatypes()) {
+ uuidToRecord.put(datatype.getUUID(), datatype);
+ }
}
+ for (AbstractMetadataRecord datatypeRecordImpl : uuidToRecord.values()) {
+ this.store.addDatatype((Datatype) datatypeRecordImpl);
+ }
getModels();
getTables();
getProcedures();
Modified: trunk/metadata/src/main/java/org/teiid/metadata/index/RecordFactory.java
===================================================================
--- trunk/metadata/src/main/java/org/teiid/metadata/index/RecordFactory.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/metadata/src/main/java/org/teiid/metadata/index/RecordFactory.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -41,6 +41,8 @@
* RuntimeAdapter
*/
public class RecordFactory {
+ /** Delimiter used to separate the URI string from the URI fragment */
+ public static final String URI_REFERENCE_DELIMITER = "#"; //$NON-NLS-1$
public static final int INDEX_RECORD_BLOCK_SIZE = IIndexConstants.BLOCK_SIZE - 32;
@@ -609,12 +611,19 @@
tokenIndex++;
// Set the datatype and basetype identifiers
- dt.setDatatypeID(getObjectValue(tokens.get(tokenIndex++)));
- dt.setBasetypeID(getObjectValue(tokens.get(tokenIndex++)));
+ tokenIndex++;
+ String basetypeID = getObjectValue(tokens.get(tokenIndex++));
+ if ( basetypeID != null ) {
+ final int i = basetypeID.lastIndexOf(URI_REFERENCE_DELIMITER);
+ if ( i != -1 && basetypeID.length() > (i+1)) {
+ basetypeID = basetypeID.substring(i+1);
+ }
+ }
+ dt.setBasetypeName(basetypeID);
// Set the fullName/objectID/nameInSource
String fullName = tokens.get(tokenIndex++);
- int indx = fullName.lastIndexOf(Datatype.URI_REFERENCE_DELIMITER);
+ int indx = fullName.lastIndexOf(URI_REFERENCE_DELIMITER);
if (indx > -1) {
fullName = new String(fullName.substring(indx+1));
} else {
@@ -665,7 +674,7 @@
// Set the primitive type identifier
if (includePrimitiveTypeIdValue(indexVersion)) {
// The next token is the primitive type identifier
- dt.setPrimitiveTypeID(getObjectValue(tokens.get(tokenIndex++)));
+ tokenIndex++;
}
// The next tokens are footer values
Modified: trunk/metadata/src/main/resources/System.vdb
===================================================================
(Binary files differ)
Added: trunk/metadata/src/main/resources/org/teiid/metadata/types.dat
===================================================================
--- trunk/metadata/src/main/resources/org/teiid/metadata/types.dat (rev 0)
+++ trunk/metadata/src/main/resources/org/teiid/metadata/types.dat 2012-01-23 18:52:20 UTC (rev 3813)
@@ -0,0 +1,54 @@
+UUID|annotation|autoIncrement|basetypeName|caseSensitive|javaClassName|length|name|nameInSource|nullType|precisionLength|radix|runtimeTypeName|scale|searchType|signed|type|varietyType
+mmuuid:43f5274e-55e1-1f87-ba1c-eea49143eb32||false|string|false|org.teiid.core.types.XMLType|0|XMLLiteral|XMLLiteral|No_Nulls|0|0|xml|0|Searchable|false|UserDefined|Atomic
+mmuuid:f2249740-a078-1e26-9b08-d6079ebe1f0d||false|decimal|false|java.math.BigDecimal|0|bigdecimal|bigdecimal|No_Nulls|0|0|bigdecimal|0|Searchable|false|UserDefined|Atomic
+mmuuid:822b9a40-a066-1e26-9b08-d6079ebe1f0d||false|decimal|false|java.math.BigInteger|0|biginteger|biginteger|No_Nulls|0|0|biginteger|0|Searchable|false|UserDefined|Atomic
+mmuuid:5a793100-1836-1ed0-ba0f-f2334f5fbf95||false|base64Binary|false|org.teiid.core.types.BlobType|0|blob|blob|No_Nulls|0|0|blob|0|Searchable|false|UserDefined|Atomic
+mmuuid:62472700-a064-1e26-9b08-d6079ebe1f0d||false|string|false|java.lang.Character|0|char|char|No_Nulls|0|0|char|0|Searchable|false|UserDefined|Atomic
+mmuuid:559646c0-4941-1ece-b22b-f49159d22ad3||false|string|false|org.teiid.core.types.ClobType|0|clob|clob|No_Nulls|0|0|clob|0|Searchable|false|UserDefined|Atomic
+mmuuid:051a0640-b4e8-1e26-9f33-b76fd9d5fa79||false|base64Binary|false|java.lang.Object|0|object|object|No_Nulls|0|0|object|0|Searchable|false|UserDefined|Atomic
+mmuuid:6d9809c0-a07e-1e26-9b08-d6079ebe1f0d||false|string|false|java.sql.Timestamp|0|timestamp|timestamp|No_Nulls|0|0|timestamp|0|Searchable|false|UserDefined|Atomic
+mmuuid:20360100-e742-1e20-8c26-a038c6ed7576||false|ENTITY|false|java.lang.String|0|ENTITIES|ENTITIES|No_Nulls|0|0|string|0|Searchable|false|UserDefined|List
+mmuuid:9fece300-e71a-1e20-8c26-a038c6ed7576||false|NCName|false|java.lang.String|0|ENTITY|ENTITY|No_Nulls|0|0|string|0|Searchable|false|UserDefined|Atomic
+mmuuid:3c99f780-e72d-1e20-8c26-a038c6ed7576||false|IDREF|false|java.lang.String|0|IDREFS|IDREFS|No_Nulls|0|0|string|0|Searchable|false|UserDefined|List
+mmuuid:dd33ff40-e6df-1e20-8c26-a038c6ed7576||false|NCName|false|java.lang.String|0|IDREF|IDREF|No_Nulls|0|0|string|0|Searchable|false|UserDefined|Atomic
+mmuuid:88b13dc0-e702-1e20-8c26-a038c6ed7576||false|NCName|false|java.lang.String|0|ID|ID|No_Nulls|0|0|string|0|Searchable|false|UserDefined|Atomic
+mmuuid:ac00e000-e676-1e20-8c26-a038c6ed7576||false|Name|false|java.lang.String|0|NCName|NCName|No_Nulls|0|0|string|0|Searchable|false|UserDefined|Atomic
+mmuuid:4b0f8500-e6a6-1e20-8c26-a038c6ed7576||false|NMTOKEN|false|java.lang.String|0|NMTOKENS|NMTOKENS|No_Nulls|0|0|string|0|Searchable|false|UserDefined|List
+mmuuid:4ca2ae00-3a95-1e20-921b-eeee28353879||false|token|false|java.lang.String|0|NMTOKEN|NMTOKEN|No_Nulls|0|0|string|0|Searchable|false|UserDefined|Atomic
+mmuuid:3dcaf900-e8dc-1e2a-b433-fb67ea35c07e||false|anySimpleType|false|java.lang.String|0|NOTATION|NOTATION|No_Nulls|0|0|string|0|Searchable|false|UserDefined|Atomic
+mmuuid:e66c4600-e65b-1e20-8c26-a038c6ed7576||false|token|false|java.lang.String|0|Name|Name|No_Nulls|0|0|string|0|Searchable|false|UserDefined|Atomic
+mmuuid:eeb5d780-e8c3-1e2a-b433-fb67ea35c07e||false|anySimpleType|false|java.lang.String|0|QName|QName|No_Nulls|0|0|string|0|Searchable|false|UserDefined|Atomic
+mmuuid:6247ec80-e8a4-1e2a-b433-fb67ea35c07e||false|anySimpleType|false|java.lang.String|0|anyURI|anyURI|No_Nulls|0|0|string|0|Searchable|false|UserDefined|Atomic
+mmuuid:b4c99380-ebc6-1e2a-9319-8eaa9b2276c7||false|anySimpleType|false|java.lang.String|0|base64Binary|base64Binary|No_Nulls|0|0|string|0|Searchable|false|UserDefined|Atomic
+mmuuid:dc476100-c483-1e24-9b01-c8207cd53eb7||false|anySimpleType|false|java.lang.Boolean|0|boolean|boolean|No_Nulls|0|0|boolean|0|Searchable|false|UserDefined|Atomic
+mmuuid:26dc1cc0-b9c8-1e21-b812-969c8fc8b016||false|short|false|java.lang.Byte|0|byte|byte|No_Nulls|0|0|byte|0|Searchable|false|UserDefined|Atomic
+mmuuid:5c69dec0-b3ea-1e2a-9a03-beb8638ffd21||false|anySimpleType|false|java.sql.Timestamp|0|dateTime|dateTime|No_Nulls|0|0|timestamp|0|Searchable|false|UserDefined|Atomic
+mmuuid:65dcde00-c4ab-1e24-9b01-c8207cd53eb7||false|anySimpleType|false|java.sql.Date|0|date|date|No_Nulls|0|0|date|0|Searchable|false|UserDefined|Atomic
+mmuuid:569dfa00-c456-1e24-9b01-c8207cd53eb7||false|anySimpleType|false|java.math.BigDecimal|0|decimal|decimal|No_Nulls|0|0|bigdecimal|0|Searchable|false|UserDefined|Atomic
+mmuuid:1f18b140-c4a3-1e24-9b01-c8207cd53eb7||false|anySimpleType|false|java.lang.Double|0|double|double|No_Nulls|0|0|double|0|Searchable|false|UserDefined|Atomic
+mmuuid:28d98540-b3e7-1e2a-9a03-beb8638ffd21||false|anySimpleType|false|java.lang.String|0|duration|duration|No_Nulls|0|0|string|0|Searchable|false|UserDefined|Atomic
+mmuuid:d86b0d00-c48a-1e24-9b01-c8207cd53eb7||false|anySimpleType|false|java.lang.Float|0|float|float|No_Nulls|0|0|float|0|Searchable|false|UserDefined|Atomic
+mmuuid:860b7dc0-b3f8-1e2a-9a03-beb8638ffd21||false|anySimpleType|false|java.math.BigInteger|0|gDay|gDay|No_Nulls|0|0|biginteger|0|Searchable|false|UserDefined|Atomic
+mmuuid:6e604140-b3f5-1e2a-9a03-beb8638ffd21||false|anySimpleType|false|java.sql.Timestamp|0|gMonthDay|gMonthDay|No_Nulls|0|0|timestamp|0|Searchable|false|UserDefined|Atomic
+mmuuid:187f5580-b3fb-1e2a-9a03-beb8638ffd21||false|anySimpleType|false|java.math.BigInteger|0|gMonth|gMonth|No_Nulls|0|0|biginteger|0|Searchable|false|UserDefined|Atomic
+mmuuid:17d08040-b3ed-1e2a-9a03-beb8638ffd21||false|anySimpleType|false|java.sql.Timestamp|0|gYearMonth|gYearMonth|No_Nulls|0|0|timestamp|0|Searchable|false|UserDefined|Atomic
+mmuuid:b02c7600-b3f2-1e2a-9a03-beb8638ffd21||false|anySimpleType|false|java.math.BigInteger|0|gYear|gYear|No_Nulls|0|0|biginteger|0|Searchable|false|UserDefined|Atomic
+mmuuid:d9998500-ebba-1e2a-9319-8eaa9b2276c7||false|anySimpleType|false|java.lang.String|0|hexBinary|hexBinary|No_Nulls|0|0|string|0|Searchable|false|UserDefined|Atomic
+mmuuid:45da3500-e78f-1e20-8c26-a038c6ed7576||false|decimal|false|java.math.BigInteger|0|integer|integer|No_Nulls|0|0|biginteger|0|Searchable|false|UserDefined|Atomic
+mmuuid:33add3c0-b98d-1e21-b812-969c8fc8b016||false|long|false|java.lang.Integer|0|int|int|No_Nulls|0|0|integer|0|Searchable|false|UserDefined|Atomic
+mmuuid:d4d980c0-e623-1e20-8c26-a038c6ed7576||false|token|false|java.lang.String|0|language|language|No_Nulls|0|0|string|0|Searchable|false|UserDefined|Atomic
+mmuuid:8cdee840-b900-1e21-b812-969c8fc8b016||false|integer|false|java.lang.Long|0|long|long|No_Nulls|0|0|long|0|Searchable|false|UserDefined|Atomic
+mmuuid:86d29280-b8d3-1e21-b812-969c8fc8b016||false|nonPositiveInteger|false|java.math.BigInteger|0|negativeInteger|negativeInteger|No_Nulls|0|0|biginteger|0|Searchable|false|UserDefined|Atomic
+mmuuid:0e081200-b8a4-1e21-b812-969c8fc8b016||false|integer|false|java.math.BigInteger|0|nonNegativeInteger|nonNegativeInteger|No_Nulls|0|0|biginteger|0|Searchable|false|UserDefined|Atomic
+mmuuid:cbdd6e40-b9d2-1e21-8c26-a038c6ed7576||false|integer|false|java.math.BigInteger|0|nonPositiveInteger|nonPositiveInteger|No_Nulls|0|0|biginteger|0|Searchable|false|UserDefined|Atomic
+mmuuid:4df43700-3b13-1e20-921b-eeee28353879||false|string|false|java.lang.String|0|normalizedString|normalizedString|No_Nulls|0|0|string|0|Searchable|false|UserDefined|Atomic
+mmuuid:1cbbd380-b9ea-1e21-b812-969c8fc8b016||false|nonNegativeInteger|false|java.math.BigInteger|0|positiveInteger|positiveInteger|No_Nulls|0|0|biginteger|0|Searchable|false|UserDefined|Atomic
+mmuuid:5bbcf140-b9ae-1e21-b812-969c8fc8b016||false|int|false|java.lang.Short|0|short|short|No_Nulls|0|0|short|0|Searchable|false|UserDefined|Atomic
+mmuuid:bf6c34c0-c442-1e24-9b01-c8207cd53eb7||false|anySimpleType|false|java.lang.String|0|string|string|No_Nulls|0|0|string|0|Searchable|false|UserDefined|Atomic
+mmuuid:3b892180-c4a7-1e24-9b01-c8207cd53eb7||false|anySimpleType|false|java.sql.Time|0|time|time|No_Nulls|0|0|time|0|Searchable|false|UserDefined|Atomic
+mmuuid:3425cb80-d844-1e20-9027-be6d2c3b8b3a||false|normalizedString|false|java.lang.String|0|token|token|No_Nulls|0|0|string|0|Searchable|false|UserDefined|Atomic
+mmuuid:cff745c0-baa2-1e21-b812-969c8fc8b016||false|unsignedShort|false|java.lang.Short|0|unsignedByte|unsignedByte|No_Nulls|0|0|short|0|Searchable|false|UserDefined|Atomic
+mmuuid:badcbd80-ba63-1e21-b812-969c8fc8b016||false|unsignedLong|false|java.lang.Long|0|unsignedInt|unsignedInt|No_Nulls|0|0|long|0|Searchable|false|UserDefined|Atomic
+mmuuid:54b98780-ba14-1e21-b812-969c8fc8b016||false|nonNegativeInteger|false|java.math.BigInteger|0|unsignedLong|unsignedLong|No_Nulls|0|0|biginteger|0|Searchable|false|UserDefined|Atomic
+mmuuid:327093c0-ba88-1e21-b812-969c8fc8b016||false|unsignedInt|false|java.lang.Integer|0|unsignedShort|unsignedShort|No_Nulls|0|0|integer|0|Searchable|false|UserDefined|Atomic
+mmuuid:182fd511-1a3e-447a-a6ea-72569d6a22ec||false|base64Binary|false|org.teiid.core.types.BinaryType|0|varbinary|varbinary|No_Nulls|0|0|varbinary|0|Searchable|false|UserDefined|Atomic
\ No newline at end of file
Modified: trunk/metadata/src/test/java/org/teiid/metadata/index/VDBMetadataFactory.java
===================================================================
--- trunk/metadata/src/test/java/org/teiid/metadata/index/VDBMetadataFactory.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/metadata/src/test/java/org/teiid/metadata/index/VDBMetadataFactory.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -31,7 +31,6 @@
import java.util.Collection;
import java.util.concurrent.Executors;
-import javax.xml.bind.JAXBException;
import javax.xml.stream.XMLStreamException;
import org.jboss.vfs.TempFileProvider;
Deleted: trunk/metadata/system-vdb-update.txt
===================================================================
--- trunk/metadata/system-vdb-update.txt 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/metadata/system-vdb-update.txt 2012-01-23 18:52:20 UTC (rev 3813)
@@ -1,3 +0,0 @@
-When updating the System.vdb using a VDB built by a 7.x Designer, the runtime-inf/DATATYPES.INDEX must be copied from the old
-version. Designer VDBs no longer contain a separate copy of that INDEX. We could consider splitting the datatype information
-into its own vdb to better handle this.
\ No newline at end of file
Modified: trunk/runtime/src/main/java/org/teiid/deployers/VDBRepository.java
===================================================================
--- trunk/runtime/src/main/java/org/teiid/deployers/VDBRepository.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/runtime/src/main/java/org/teiid/deployers/VDBRepository.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -55,6 +55,7 @@
private List<VDBLifeCycleListener> listeners = new CopyOnWriteArrayList<VDBLifeCycleListener>();
private SystemFunctionManager systemFunctionManager;
private MetadataRepository metadataRepository;
+ private Map<String, Datatype> datatypeMap = new HashMap<String, Datatype>();
public MetadataRepository getMetadataRepository() {
return metadataRepository;
@@ -224,6 +225,15 @@
public void setSystemStore(MetadataStore store) {
this.systemStore = store;
+ Collection<Datatype> datatypes = this.systemStore.getDatatypes();
+ for (Class<?> typeClass : DataTypeManager.getAllDataTypeClasses()) {
+ for (Datatype datatypeRecordImpl : datatypes) {
+ if (datatypeRecordImpl.getJavaClassName().equals(typeClass.getName())) {
+ datatypeMap.put(DataTypeManager.getDataTypeName(typeClass), datatypeRecordImpl);
+ break;
+ }
+ }
+ }
}
public void setMetadataRepository(MetadataRepository metadataRepository) {
@@ -265,16 +275,6 @@
}
public Map<String, Datatype> getBuiltinDatatypes() {
- Collection<Datatype> datatypes = this.systemStore.getDatatypes();
- Map<String, Datatype> datatypeMap = new HashMap<String, Datatype>();
- for (Class<?> typeClass : DataTypeManager.getAllDataTypeClasses()) {
- for (Datatype datatypeRecordImpl : datatypes) {
- if (datatypeRecordImpl.getJavaClassName().equals(typeClass.getName())) {
- datatypeMap.put(DataTypeManager.getDataTypeName(typeClass), datatypeRecordImpl);
- break;
- }
- }
- }
return datatypeMap;
}
Modified: trunk/test-integration/common/src/test/java/org/teiid/connector/metadata/runtime/MockConnector.java
===================================================================
--- trunk/test-integration/common/src/test/java/org/teiid/connector/metadata/runtime/MockConnector.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/java/org/teiid/connector/metadata/runtime/MockConnector.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -15,11 +15,11 @@
import org.teiid.metadata.RuntimeMetadata;
import org.teiid.metadata.BaseColumn.NullType;
import org.teiid.metadata.Column.SearchType;
-import org.teiid.translator.TranslatorException;
import org.teiid.translator.ExecutionContext;
import org.teiid.translator.ExecutionFactory;
import org.teiid.translator.ProcedureExecution;
import org.teiid.translator.ResultSetExecution;
+import org.teiid.translator.TranslatorException;
public class MockConnector extends ExecutionFactory<Object, Object> {
@@ -66,9 +66,6 @@
TestCase.assertEquals(String.class, elementMD.getJavaType());
TestCase.assertEquals(null, elementMD.getMaximumValue());
TestCase.assertEquals(null, elementMD.getMinimumValue());
- TestCase.assertEquals("http://www.w3.org/2001/XMLSchema#anySimpleType", elementMD.getBaseTypeID()); //$NON-NLS-1$
- TestCase.assertEquals("http://www.w3.org/2001/XMLSchema#string", elementMD.getPrimitiveTypeID()); //$NON-NLS-1$
- TestCase.assertEquals("http://www.w3.org/2001/XMLSchema#string", elementMD.getDatatypeID()); //$NON-NLS-1$
TestCase.assertEquals("COLUMN1", elementMD.getNameInSource()); //$NON-NLS-1$
TestCase.assertEquals("STR", elementMD.getNativeType()); //$NON-NLS-1$
TestCase.assertEquals(NullType.Nullable, elementMD.getNullType());
@@ -94,9 +91,6 @@
TestCase.assertEquals(Integer.class, elementMD2.getJavaType());
TestCase.assertEquals("1", elementMD2.getMaximumValue()); //$NON-NLS-1$
TestCase.assertEquals("100", elementMD2.getMinimumValue()); //$NON-NLS-1$
- TestCase.assertEquals("http://www.w3.org/2001/XMLSchema#long", elementMD2.getBaseTypeID()); //$NON-NLS-1$
- TestCase.assertEquals("http://www.w3.org/2001/XMLSchema#decimal", elementMD2.getPrimitiveTypeID()); //$NON-NLS-1$
- TestCase.assertEquals("http://www.w3.org/2001/XMLSchema#int", elementMD2.getDatatypeID()); //$NON-NLS-1$
TestCase.assertEquals("COLUMN2", elementMD2.getNameInSource()); //$NON-NLS-1$
TestCase.assertEquals("INT", elementMD2.getNativeType()); //$NON-NLS-1$
TestCase.assertEquals(NullType.No_Nulls, elementMD2.getNullType());
Modified: trunk/test-integration/common/src/test/java/org/teiid/connector/metadata/runtime/TestElement.java
===================================================================
--- trunk/test-integration/common/src/test/java/org/teiid/connector/metadata/runtime/TestElement.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/java/org/teiid/connector/metadata/runtime/TestElement.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -68,8 +68,7 @@
public void helpTestElement(String fullGroupName, String elementShortName, TranslationUtility transUtil,
String nameInSource, Object defaultValue, Object minValue, Object maxValue,
Class<?> javaType, int length, NullType nullable, int position, SearchType searchable,
- boolean autoIncrement, boolean caseSensitive, Map<String, String> expectedProps,
- String modeledType, String modeledBaseType, String modeledPrimitiveType)
+ boolean autoIncrement, boolean caseSensitive, Map<String, String> expectedProps)
throws Exception {
Column element = getElement(fullGroupName, elementShortName, transUtil);
@@ -85,13 +84,6 @@
assertEquals(autoIncrement, element.isAutoIncremented());
assertEquals(caseSensitive, element.isCaseSensitive());
-//System.out.println("\n" + element.getModeledType() + "\n" + element.getModeledBaseType() + "\n" + element.getModeledPrimitiveType());
-
- assertEquals(modeledType, element.getDatatypeID());
- assertEquals(modeledBaseType, element.getBaseTypeID());
- assertEquals(modeledPrimitiveType, element.getPrimitiveTypeID());
-
-
Map<String, String> extProps = element.getProperties();
assertEquals(expectedProps, extProps);
}
@@ -112,10 +104,7 @@
SearchType.Searchable, // searchable
false, // auto incremented
true, // case sensitive
- props, // extension properties
- "http://www.w3.org/2001/XMLSchema#string", // modeled type //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#anySimpleType", // modeled base type //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#string" // modeled primitive type //$NON-NLS-1$
+ props
);
}
@@ -135,10 +124,7 @@
SearchType.Searchable, // searchable
false, // auto incremented
true, // case sensitive
- props, // extension properties
- "http://www.w3.org/2001/XMLSchema#int", // modeled type //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#long", // modeled base type //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#decimal" // modeled primitive type //$NON-NLS-1$
+ props
);
}
@@ -158,10 +144,7 @@
SearchType.Searchable, // searchable
false, // auto incremented
true, // case sensitive
- props, // extension properties
- "http://www.w3.org/2001/XMLSchema#int", // modeled type //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#long", // modeled base type //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#decimal" // modeled primitive type //$NON-NLS-1$
+ props
);
}
@@ -181,10 +164,7 @@
SearchType.Searchable, // searchable
true, // auto incremented
true, // case sensitive
- props, // extension properties
- "http://www.w3.org/2001/XMLSchema#long", // modeled type //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#integer", // modeled base type //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#decimal" // modeled primitive type //$NON-NLS-1$
+ props
);
}
@@ -204,10 +184,7 @@
SearchType.Searchable, // searchable
false, // auto incremented
false, // case sensitive
- props, // extension properties
- "http://www.w3.org/2001/XMLSchema#string", // modeled type //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#anySimpleType", // modeled base type //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#string" // modeled primitive type //$NON-NLS-1$
+ props
);
}
@@ -227,10 +204,7 @@
SearchType.Searchable, // searchable
false, // auto incremented
true, // case sensitive
- props, // extension properties
- "http://www.w3.org/2001/XMLSchema#int", // modeled type //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#long", // modeled base type //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#decimal" // modeled primitive type //$NON-NLS-1$
+ props
);
}
@@ -250,10 +224,7 @@
SearchType.Searchable, // searchable
false, // auto incremented
true, // case sensitive
- props, // extension properties
- "http://www.metamatrix.com/XMLSchema/DataSets/Books/BookDatatypes#PublicationYear", // modeled type //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#gYear", // modeled base type //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#gYear" // modeled primitive type //$NON-NLS-1$
+ props
);
}
@@ -273,10 +244,7 @@
SearchType.Unsearchable, // searchable
false, // auto incremented
true, // case sensitive
- props, // extension properties
- "http://www.w3.org/2001/XMLSchema#int", // modeled type //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#long", // modeled base type //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#decimal" // modeled primitive type //$NON-NLS-1$
+ props
);
}
@@ -296,10 +264,7 @@
SearchType.Like_Only, // searchable
false, // auto incremented
true, // case sensitive
- props, // extension properties
- "http://www.w3.org/2001/XMLSchema#string", // modeled type //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#anySimpleType", // modeled base type //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#string" // modeled primitive type //$NON-NLS-1$
+ props
);
}
@@ -319,10 +284,7 @@
SearchType.All_Except_Like, // searchable
false, // auto incremented
true, // case sensitive
- props, // extension properties
- "http://www.w3.org/2001/XMLSchema#int", // modeled type //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#long", // modeled base type //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#decimal" // modeled primitive type //$NON-NLS-1$
+ props
);
}
@@ -342,10 +304,7 @@
SearchType.Searchable, // searchable
false, // auto incremented
true, // case sensitive
- props, // extension properties
- "http://www.w3.org/2001/XMLSchema#string", // modeled type //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#anySimpleType", // modeled base type //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#string" // modeled primitive type //$NON-NLS-1$
+ props
);
}
@@ -365,10 +324,7 @@
SearchType.Searchable, // searchable
false, // auto incremented
true, // case sensitive
- props, // extension properties
- "http://www.w3.org/2001/XMLSchema#int", // modeled type //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#long", // modeled base type //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#decimal" // modeled primitive type //$NON-NLS-1$
+ props
);
}
@@ -388,10 +344,7 @@
SearchType.Searchable, // searchable
false, // auto incremented
true, // case sensitive
- props, // extension properties
- "http://www.w3.org/2001/XMLSchema#string", // modeled type //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#anySimpleType", // modeled base type //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#string" // modeled primitive type //$NON-NLS-1$
+ props
);
}
@@ -411,10 +364,7 @@
SearchType.Searchable, // searchable
false, // auto incremented
true, // case sensitive
- props, // extension properties
- "http://www.w3.org/2001/XMLSchema#string", // modeled type //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#anySimpleType", // modeled base type //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#string" // modeled primitive type //$NON-NLS-1$
+ props
);
}
@@ -434,10 +384,7 @@
SearchType.Searchable, // searchable
false, // auto incremented
true, // case sensitive
- props, // extension properties
- "http://www.w3.org/2001/XMLSchema#int", // modeled type //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#long", // modeled base type //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#decimal" // modeled primitive type //$NON-NLS-1$
+ props
);
}
Modified: trunk/test-integration/common/src/test/java/org/teiid/connector/metadata/runtime/TestParams.java
===================================================================
--- trunk/test-integration/common/src/test/java/org/teiid/connector/metadata/runtime/TestParams.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/java/org/teiid/connector/metadata/runtime/TestParams.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -40,6 +40,7 @@
/**
* @since 4.3
*/
+ at SuppressWarnings("nls")
public class TestParams extends TestCase {
private static TranslationUtility CONNECTOR_METADATA_UTILITY = createTranslationUtility(getTestVDBName());
@@ -76,16 +77,14 @@
private void checkParameter(Argument param,
String name,
String fullName,
- int index,
Direction direction,
String nameInSource,
String defaultValue,
NullType nullability,
- Class javaType,
+ Class<?> javaType,
int length,
int precision,
- int scale,
- TranslationUtility transUtil, String modeledType, String modeledBaseType, String modeledPrimitiveType) throws Exception {
+ int scale) throws Exception {
ProcedureParameter p = param.getMetadataObject();
assertEquals(name, p.getName());
assertEquals(fullName, p.getFullName());
@@ -100,12 +99,6 @@
assertEquals(scale, p.getScale());
assertEquals(null, param.getArgumentValue().getValue());
- //System.out.println("\n" + p.getModeledType() + "\n" + p.getModeledBaseType() + "\n" + p.getModeledPrimitiveType());
-
- assertEquals(modeledType, p.getDatatypeID());
- assertEquals(modeledBaseType, p.getBaseTypeID());
- assertEquals(modeledPrimitiveType, p.getPrimitiveTypeID());
-
}
public void testProcedureWithResultSet() throws Exception {
@@ -116,70 +109,50 @@
checkParameter((Argument)params.get(0),
"in1", //$NON-NLS-1$
"sptest.proc1.in1", //$NON-NLS-1$
- 1,
Direction.IN,
null,
- "sample default", //$NON-NLS-1$
- NullType.No_Nulls,
+ "sample default",
+ NullType.No_Nulls, //$NON-NLS-1$
String.class,
20,
10,
- 5,
- CONNECTOR_METADATA_UTILITY,
- "http://www.w3.org/2001/XMLSchema#string", //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#anySimpleType", //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#string"); //$NON-NLS-1$
+ 5); //$NON-NLS-1$
checkParameter((Argument)params.get(1),
"in2", //$NON-NLS-1$
"sptest.proc1.in2", //$NON-NLS-1$
- 2,
Direction.IN,
null,
- "15", //$NON-NLS-1$
- NullType.Nullable,
+ "15",
+ NullType.Nullable, //$NON-NLS-1$
Integer.class,
0,
10,
- 0,
- CONNECTOR_METADATA_UTILITY,
- "http://www.w3.org/2001/XMLSchema#int", //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#long", //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#decimal"); //$NON-NLS-1$
+ 0); //$NON-NLS-1$
checkParameter((Argument)params.get(2),
"in3", //$NON-NLS-1$
"sptest.proc1.in3", //$NON-NLS-1$
- 3,
Direction.IN,
null,
- "2003-04-23 09:30:00", //$NON-NLS-1$
- NullType.Unknown,
+ "2003-04-23 09:30:00",
+ NullType.Unknown, //$NON-NLS-1$
Timestamp.class,
22,
10,
- 0,
- CONNECTOR_METADATA_UTILITY,
- "http://www.metamatrix.com/metamodels/SimpleDatatypes-instance#timestamp", //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#string", //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#string"); //$NON-NLS-1$
+ 0); //$NON-NLS-1$
checkParameter((Argument)params.get(3),
"inOptional", //$NON-NLS-1$
"sptest.proc1.inOptional", //$NON-NLS-1$
- 4,
Direction.IN,
- "optionalName", //$NON-NLS-1$
- null,
+ "optionalName",
+ null, //$NON-NLS-1$
NullType.Nullable,
String.class,
0,
0,
- 0,
- CONNECTOR_METADATA_UTILITY,
- "http://www.w3.org/2001/XMLSchema#string", //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#anySimpleType", //$NON-NLS-1$
- "http://www.w3.org/2001/XMLSchema#string"); //$NON-NLS-1$
+ 0); //$NON-NLS-1$
}
Modified: trunk/test-integration/common/src/test/java/org/teiid/transport/TestJDBCSocketTransport.java
===================================================================
--- trunk/test-integration/common/src/test/java/org/teiid/transport/TestJDBCSocketTransport.java 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/java/org/teiid/transport/TestJDBCSocketTransport.java 2012-01-23 18:52:20 UTC (rev 3813)
@@ -26,6 +26,7 @@
import java.net.InetSocketAddress;
import java.sql.Connection;
+import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.Properties;
@@ -109,6 +110,24 @@
assertEquals("<root></root>", s.getResultSet().getString(1));
}
+ @Test public void testVarbinary() throws Exception {
+ Statement s = conn.createStatement();
+ assertTrue(s.execute("select X'aab1'"));
+ s.getResultSet().next();
+ byte[] bytes = s.getResultSet().getBytes(1);
+ assertArrayEquals(new byte[] {(byte)0xaa, (byte)0xb1}, bytes);
+ assertArrayEquals(bytes, s.getResultSet().getBlob(1).getBytes(1, 2));
+ }
+
+ @Test public void testVarbinaryPrepared() throws Exception {
+ PreparedStatement s = conn.prepareStatement("select cast(? as varbinary)");
+ s.setBytes(1, "hello".getBytes());
+ assertTrue(s.execute());
+ s.getResultSet().next();
+ byte[] bytes = s.getResultSet().getBytes(1);
+ assertEquals("hello", new String(bytes));
+ }
+
@Test public void testXmlTableScrollable() throws Exception {
Statement s = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
assertTrue(s.execute("select * from xmltable('/root/row' passing (select xmlelement(name \"root\", xmlagg(xmlelement(name \"row\", xmlforest(t.name)) order by t.name)) from tables as t, columns as t1) columns \"Name\" string) as x"));
Modified: trunk/test-integration/common/src/test/resources/TestCase3473/testGetPrimaryKeys.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestCase3473/testGetPrimaryKeys.expected 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/resources/TestCase3473/testGetPrimaryKeys.expected 2012-01-23 18:52:20 UTC (rev 3813)
@@ -1,5 +1,5 @@
string string string string short string
-VDBName SchemaName TableName Name KEY_SEQ KeyName
+TABLE_CAT TABLE_SCHEM TABLE_NAME COLUMN_NAME KEY_SEQ PK_NAME
test test all_models model_id 1 models_pk
Row Count : 1
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
@@ -10,7 +10,7 @@
KEY_SEQ 5 test java.lang.Short KEY_SEQ short <null> <null> 6 5 0 false false false true 1 false true true true
KeyName 12 test java.lang.String PK_NAME string SYS KeyColumns 255 255 0 false false false false 1 true true false false
string string string string short string
-VDBName SchemaName TableName Name KEY_SEQ KeyName
+TABLE_CAT TABLE_SCHEM TABLE_NAME COLUMN_NAME KEY_SEQ PK_NAME
Row Count : 0
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 test java.lang.String TABLE_CAT string SYS KeyColumns 255 255 0 false false false false 0 true true false false
@@ -20,7 +20,7 @@
KEY_SEQ 5 test java.lang.Short KEY_SEQ short <null> <null> 6 5 0 false false false true 1 false true true true
KeyName 12 test java.lang.String PK_NAME string SYS KeyColumns 255 255 0 false false false false 1 true true false false
string string string string short string
-VDBName SchemaName TableName Name KEY_SEQ KeyName
+TABLE_CAT TABLE_SCHEM TABLE_NAME COLUMN_NAME KEY_SEQ PK_NAME
Row Count : 0
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 test java.lang.String TABLE_CAT string SYS KeyColumns 255 255 0 false false false false 0 true true false false
Modified: trunk/test-integration/common/src/test/resources/TestCase3473/testGetTables.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestCase3473/testGetTables.expected 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/resources/TestCase3473/testGetTables.expected 2012-01-23 18:52:20 UTC (rev 3813)
@@ -1,5 +1,5 @@
string string string string string string string string string string boolean
-VDBName SchemaName Name TABLE_TYPE Description TYPE_CAT TYPE_SCHEM TYPE_NAME SELF_REFERENCING_COL_NAME REF_GENERATION IsPhysical
+TABLE_CAT TABLE_SCHEM TABLE_NAME TABLE_TYPE REMARKS TYPE_CAT TYPE_SCHEM TYPE_NAME SELF_REFERENCING_COL_NAME REF_GENERATION ISPHYSICAL
test SYS Columns SYSTEM TABLE <null> <null> <null> <null> <null> <null> true
test SYS DataTypes SYSTEM TABLE <null> <null> <null> <null> <null> <null> true
test SYS KeyColumns SYSTEM TABLE <null> <null> <null> <null> <null> <null> true
@@ -43,7 +43,7 @@
REF_GENERATION 12 test java.lang.String REF_GENERATION string <null> <null> 4000 4000 0 false false false true 1 false true true true
IsPhysical -7 test java.lang.Boolean ISPHYSICAL boolean SYS Tables 5 1 0 false true false false 0 true true false false
string string string string string string string string string string boolean
-VDBName SchemaName Name TABLE_TYPE Description TYPE_CAT TYPE_SCHEM TYPE_NAME SELF_REFERENCING_COL_NAME REF_GENERATION IsPhysical
+TABLE_CAT TABLE_SCHEM TABLE_NAME TABLE_TYPE REMARKS TYPE_CAT TYPE_SCHEM TYPE_NAME SELF_REFERENCING_COL_NAME REF_GENERATION ISPHYSICAL
Row Count : 0
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 test java.lang.String TABLE_CAT string SYS Tables 255 255 0 false true false true 1 false true true true
@@ -58,7 +58,7 @@
REF_GENERATION 12 test java.lang.String REF_GENERATION string <null> <null> 4000 4000 0 false false false true 1 false true true true
IsPhysical -7 test java.lang.Boolean ISPHYSICAL boolean SYS Tables 5 1 0 false true false false 0 true true false false
string string string string string string string string string string boolean
-VDBName SchemaName Name TABLE_TYPE Description TYPE_CAT TYPE_SCHEM TYPE_NAME SELF_REFERENCING_COL_NAME REF_GENERATION IsPhysical
+TABLE_CAT TABLE_SCHEM TABLE_NAME TABLE_TYPE REMARKS TYPE_CAT TYPE_SCHEM TYPE_NAME SELF_REFERENCING_COL_NAME REF_GENERATION ISPHYSICAL
Row Count : 0
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 test java.lang.String TABLE_CAT string SYS Tables 255 255 0 false true false true 1 false true true true
Modified: trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetColumns.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetColumns.expected 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetColumns.expected 2012-01-23 18:52:20 UTC (rev 3813)
@@ -1,1098 +1,1098 @@
-string string string string short string integer string integer integer integer string string string string integer integer string string string string !
string string
-VDBName SchemaName TableName Name DATA_TYPE DataType COLUMN_SIZE BUFFER_LENGTH Scale Radix NULLABLE Description DefaultValue SQL_DATA_TYPE SQL_DATETIME_SUB CharOctetLength Position IS_NULLABLE SCOPE_CATALOG SCOPE_SCHEMA SCOPE_TABLE !
SOURCE_DATA_TYPE IS_AUTOINCREMENT
-QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.BigDecimalValue 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.BigIntegerValue 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.BooleanValue 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.ByteNum 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.CharValue 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.DateValue 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.DoubleNum 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.FloatNum 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.IntKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.IntNum 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.LongNum 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.ObjectValue 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.ShortValue 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.StringKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.StringNum 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.TimestampValue 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.TimeValue 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow IntKey 4 integer 10 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow StringKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow IntNum 4 integer 10 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow StringNum 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow FloatNum 7 float 20 <null> 0 0 1 <null> <null> <null> <null> 0 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow LongNum -5 long 19 <null> 0 0 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow DoubleNum 8 double 20 <null> 0 0 1 <null> <null> <null> <null> 0 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow ByteNum -6 byte 3 <null> 0 0 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow DateValue 91 date 10 <null> 0 0 1 <null> <null> <null> <null> 0 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow TimeValue 92 time 8 <null> 0 0 1 <null> <null> <null> <null> 0 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow TimestampValue 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow BooleanValue -7 boolean 1 <null> 0 0 1 <null> <null> <null> <null> 0 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow CharValue 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow ShortValue 5 short 5 <null> 0 0 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow BigIntegerValue 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow BigDecimalValue 2 bigdecimal 20 <null> 0 0 1 <null> <null> <null> <null> 0 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow ObjectValue <null> <null> <null> <null> 0 0 1 <null> <null> <null> <null> 0 17 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Agg1 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Agg2 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Agg3 count 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 1 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Agg4 min 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Agg4 sum -5 long 19 <null> 0 10 0 <null> <null> <null> <null> 1 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Agg4 avg 8 double 20 <null> 0 10 0 <null> <null> <null> <null> 1 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Expr1 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Expr1 expr 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Expr2 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Expr2 E 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Expr3 expr 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Expr4 E 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Expr5 E 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Expr6 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Expr6 expr 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Expr7 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Expr7 E 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 IntKey 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 IntKey 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order3 E 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order4 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order5 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns VDBName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns SchemaName 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns TableName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns Position 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns NameInSource 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns DataType 12 string 100 <null> 0 10 0 <null> <null> <null> <null> 100 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns Scale 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns Length 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns IsLengthFixed -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns SupportsSelect -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns SupportsUpdates -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns IsCaseSensitive -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns IsSigned -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 14 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns IsCurrency -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 15 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns IsAutoIncremented -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 16 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns NullType 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 17 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns MinRange 12 string 50 <null> 0 10 1 <null> <null> <null> <null> 50 18 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns MaxRange 12 string 50 <null> 0 10 1 <null> <null> <null> <null> 50 19 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns DistinctCount 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 20 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns NullCount 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 21 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns SearchType 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 22 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns Format 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 23 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns DefaultValue 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 24 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns JavaClass 12 string 500 <null> 0 10 0 <null> <null> <null> <null> 500 25 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns Precision 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 26 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns CharOctetLength 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 27 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns Radix 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 28 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 29 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns Description 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 30 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 31 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes Name 12 string 100 <null> 0 10 0 <null> <null> <null> <null> 100 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes IsStandard -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes IsPhysical -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes TypeName 12 string 100 <null> 0 10 0 <null> <null> <null> <null> 100 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes JavaClass 12 string 500 <null> 0 10 0 <null> <null> <null> <null> 500 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes Scale 4 integer 10 <null> 0 10 1 <null> (0) <null> <null> 10 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes TypeLength 4 integer 10 <null> 0 10 0 <null> (0) <null> <null> 10 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes NullType 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes IsSigned -7 boolean 1 <null> 0 10 0 <null> ('0') <null> <null> 1 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes IsAutoIncremented -7 boolean 1 <null> 0 10 0 <null> ('0') <null> <null> 1 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes IsCaseSensitive -7 boolean 1 <null> 0 10 0 <null> ('0') <null> <null> 1 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes Precision 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes Radix 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes SearchType 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 14 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 15 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes RuntimeType 12 string 64 <null> 0 10 1 <null> <null> <null> <null> 64 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes BaseType 12 string 64 <null> 0 10 1 <null> <null> <null> <null> 64 17 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes Description 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 18 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 19 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS KeyColumns VDBName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS KeyColumns SchemaName 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS KeyColumns TableName 12 string 2048 <null> 0 10 0 <null> <null> <null> <null> 2048 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS KeyColumns Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS KeyColumns KeyName 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS KeyColumns KeyType 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS KeyColumns RefKeyUID 12 string 50 <null> 0 10 1 <null> <null> <null> <null> 50 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS KeyColumns UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS KeyColumns Position 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS KeyColumns OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Keys VDBName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Keys SchemaName 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Keys TableName 12 string 2048 <null> 0 10 0 <null> <null> <null> <null> 2048 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Keys Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Keys Description 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Keys NameInSource 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Keys Type 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Keys IsIndexed -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Keys RefKeyUID 12 string 50 <null> 0 10 1 <null> <null> <null> <null> 50 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Keys UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Keys OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYSADMIN MatViews VDBName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYSADMIN MatViews SchemaName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYSADMIN MatViews Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYSADMIN MatViews TargetSchemaName 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYSADMIN MatViews TargetName 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 4000 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYSADMIN MatViews Valid -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYSADMIN MatViews LoadState 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYSADMIN MatViews Updated 93 timestamp 29 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYSADMIN MatViews Cardinality 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ProcedureParams VDBName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ProcedureParams SchemaName 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ProcedureParams ProcedureName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ProcedureParams Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ProcedureParams DataType 12 string 25 <null> 0 10 0 <null> <null> <null> <null> 25 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ProcedureParams Position 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ProcedureParams Type 12 string 100 <null> 0 10 0 <null> <null> <null> <null> 100 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ProcedureParams Optional -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ProcedureParams Precision 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ProcedureParams TypeLength 4 integer 10 <null> 0 10 0 <null> (0) <null> <null> 10 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ProcedureParams Scale 4 integer 10 <null> 0 10 0 <null> (0) <null> <null> 10 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ProcedureParams Radix 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ProcedureParams NullType 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ProcedureParams UID 12 string 50 <null> 0 10 1 <null> <null> <null> <null> 50 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ProcedureParams Description 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ProcedureParams OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 16 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Procedures VDBName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Procedures SchemaName 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Procedures Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Procedures NameInSource 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Procedures ReturnsResults -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Procedures UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Procedures Description 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Procedures OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Properties Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Properties Value 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Properties UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Properties OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Properties ClobValue 2005 clob 2097152 <null> 0 10 1 <null> <null> <null> <null> 2097152 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ReferenceKeyColumns PKTABLE_CAT 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ReferenceKeyColumns PKTABLE_SCHEM 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ReferenceKeyColumns PKTABLE_NAME 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ReferenceKeyColumns PKCOLUMN_NAME 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ReferenceKeyColumns FKTABLE_CAT 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ReferenceKeyColumns FKTABLE_SCHEM 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ReferenceKeyColumns FKTABLE_NAME 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ReferenceKeyColumns FKCOLUMN_NAME 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ReferenceKeyColumns KEY_SEQ 5 short 5 <null> 0 10 1 <null> <null> <null> <null> 5 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ReferenceKeyColumns UPDATE_RULE 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ReferenceKeyColumns DELETE_RULE 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ReferenceKeyColumns FK_NAME 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ReferenceKeyColumns PK_NAME 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ReferenceKeyColumns DEFERRABILITY 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Schemas VDBName 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Schemas Name 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Schemas IsPhysical -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Schemas UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Schemas Description 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Schemas PrimaryMetamodelURI 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Schemas OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Tables VDBName 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Tables SchemaName 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Tables Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Tables Type 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Tables NameInSource 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Tables IsPhysical -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Tables SupportsUpdates -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Tables UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Tables Cardinality 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Tables Description 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Tables IsSystem -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Tables IsMaterialized -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 0 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Tables OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U11 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U11 StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U4 A 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U4 B 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U4 C 7 float 20 <null> 0 10 0 <null> <null> <null> <null> 126 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U5 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U5 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U5 Source 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U6 StringCol 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U6 IntCol 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U9 A 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U9 B 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U9 C 7 float 20 <null> 0 10 0 <null> <null> <null> <null> 126 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYSADMIN VDBResources resourcePath 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYSADMIN VDBResources contents 2004 blob 2147483647 <null> 0 10 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS VirtualDatabases Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS VirtualDatabases Version 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc choiceTestDocument choiceTest.data1.wrapper1.data1 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc choiceTestDocument choiceTest.data1.wrapper1.key1 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc choiceTestDocument choiceTest.data1.wrapper1 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc choiceTestDocument choiceTest.data1 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc choiceTestDocument choiceTest.data2.wrapper2.data2 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc choiceTestDocument choiceTest.data2.wrapper2.key2 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc choiceTestDocument choiceTest.data2.wrapper2 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc choiceTestDocument choiceTest.data2 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc choiceTestDocument choiceTest.data3.wrapper3.key3.data3 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc choiceTestDocument choiceTest.data3.wrapper3.key3 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc choiceTestDocument choiceTest.data3.wrapper3 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc choiceTestDocument choiceTest.data3 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc choiceTestDocument choiceTest 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc choiceTestDocument.MappingClasses.choiceTest key1 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc choiceTestDocument.MappingClasses.choiceTest data1 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc choiceTestDocument.MappingClasses.choiceTest data2 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc choiceTestDocument.MappingClasses.choiceTest key2 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc choiceTestDocument.MappingClasses.choiceTest key3 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc choiceTestDocument.MappingClasses.choiceTest data3 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc defaultValueTestDocument defaultValueTest.wrapper. at dataAttr 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc defaultValueTestDocument defaultValueTest.wrapper.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc defaultValueTestDocument defaultValueTest.wrapper.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc defaultValueTestDocument defaultValueTest.wrapper 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc defaultValueTestDocument defaultValueTest 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc defaultValueTestDocument.MappingClasses.wrapper key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc defaultValueTestDocument.MappingClasses.wrapper data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc defaultValueTestDocument.MappingClasses.wrapper dataAttr 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc emptyContentTestDocument emptyContentTest.wrapper1.data1 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc emptyContentTestDocument emptyContentTest.wrapper1.key1 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc emptyContentTestDocument emptyContentTest.wrapper1 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc emptyContentTestDocument emptyContentTest 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc emptyContentTestDocument.MappingClasses.wrapper1 key1 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc emptyContentTestDocument.MappingClasses.wrapper1 data1 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc fixedValueTestDocument fixedValueTest.wrapper. at fixedAttr 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc fixedValueTestDocument fixedValueTest.wrapper.fixed 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc fixedValueTestDocument fixedValueTest.wrapper.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc fixedValueTestDocument fixedValueTest.wrapper 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc fixedValueTestDocument fixedValueTest 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc fixedValueTestDocument.MappingClasses.wrapper key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupA.code 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupA.ID 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupA.supervisor.code 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupA.supervisor.groupID 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupA.supervisor.group 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupA.supervisor.ID 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupA.supervisorID 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupA.supervisor 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupA 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupB.code 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupB.ID 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupB.supervisor.code 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupB.supervisor.groupID 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupB.supervisor.group 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupB.supervisor.ID 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupB.supervisorID 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupB.supervisor 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupB 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc groupDocument group.pseudoID 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc groupDocument group 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc groupDocument.MappingClasses.group ID 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc groupDocument.MappingClasses.group code 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc groupDocument.MappingClasses.group supervisorID 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc groupDocument.MappingClasses.group1 ID 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc groupDocument.MappingClasses.group1 code 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc groupDocument.MappingClasses.group1 supervisorID 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc groupDocument.MappingClasses.supervisor ID 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc groupDocument.MappingClasses.supervisor code 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc groupDocument.MappingClasses.supervisor groupID 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog matpg_datatype oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog matpg_datatype typname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog matpg_datatype name 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog matpg_datatype uid 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog matpg_datatype typlen 5 short 5 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog matpg_relatt attrelid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog matpg_relatt attnum 5 short 5 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog matpg_relatt attname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog matpg_relatt relname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog matpg_relatt nspname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog matpg_relatt autoinc -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 6 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog matpg_relatt typoid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 7 <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc mixedContentTestDocument mixedContentTest.wrapper3.key3.data3 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc mixedContentTestDocument mixedContentTest.wrapper3.key3 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc mixedContentTestDocument mixedContentTest.wrapper3 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc mixedContentTestDocument mixedContentTest 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc mixedContentTestDocument.MappingClasses.wrapper3 key3 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc mixedContentTestDocument.MappingClasses.wrapper3 data3 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc multipleDocsTestDocument multipleDocsTest.data1 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc multipleDocsTestDocument multipleDocsTest.key1 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc multipleDocsTestDocument multipleDocsTest 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc multipleDocsTestDocument.MappingClasses.multipleDocsTest key1 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc multipleDocsTestDocument.MappingClasses.multipleDocsTest data1 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc nillableTestDocument nillableTest.wrapper.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc nillableTestDocument nillableTest.wrapper.nillableField 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc nillableTestDocument nillableTest.wrapper 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc nillableTestDocument nillableTest 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc nillableTestDocument.MappingClasses.wrapper key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc nillableTestDocument.MappingClasses.wrapper nillableField 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_am oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_am amname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_attrdef adrelid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_attrdef adnum 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_attrdef adbin 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_attrdef adsrc 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_attribute oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_attribute attrelid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_attribute attname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_attribute atttypid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_attribute attlen 5 short 5 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_attribute attnum 5 short 5 <null> 0 0 2 <null> <null> <null> <null> 0 6 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_attribute atttypmod 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 7 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_attribute attnotnull -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 8 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_attribute attisdropped -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 9 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_attribute atthasdef -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 10 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_class oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_class relname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_class relnamespace 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_class relkind 1 char 1 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_class relam 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_class reltuples 7 float 20 <null> 0 0 2 <null> <null> <null> <null> 0 6 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_class relpages 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 7 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_class relhasrules -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 8 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_class relhasoids -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 9 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_database oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_database datname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_database encoding 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_database datlastsysoid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_database datallowconn 1 char 1 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_database datconfig 2000 object 2147483647 <null> 0 0 2 <null> <null> <null> <null> 0 6 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_database datacl 2000 object 2147483647 <null> 0 0 2 <null> <null> <null> <null> 0 7 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_database datdba 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 8 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_database dattablespace 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 9 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_index oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_index indexrelid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_index indrelid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_index indisclustered -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_index indisunique -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_index indisprimary -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 6 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_index indexprs 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 7 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_index indkey 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 8 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_namespace oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_namespace nspname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_proc oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_proc proname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_proc proretset -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_proc prorettype 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_proc pronargs 5 short 5 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_proc proargtypes 2000 object 2147483647 <null> 0 0 2 <null> <null> <null> <null> 0 6 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_proc proargnames 2000 object 2147483647 <null> 0 0 2 <null> <null> <null> <null> 0 7 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_proc proargmodes 2000 object 2147483647 <null> 0 0 2 <null> <null> <null> <null> 0 8 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_proc proallargtypes 2000 object 2147483647 <null> 0 0 2 <null> <null> <null> <null> 0 9 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_proc pronamespace 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 10 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_trigger oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_trigger tgconstrrelid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_trigger tgfoid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_trigger tgargs 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_trigger tgnargs 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_trigger tgdeferrable -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 6 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_trigger tginitdeferred -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 7 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_trigger tgconstrname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 8 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_trigger tgrelid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 9 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_type oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_type typname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_type typnamespace 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_type typlen 5 short 5 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_type typtype 1 char 1 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_type typbasetype 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 6 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_type typtypmod 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 7 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_type typrelid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 8 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_type typelem 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 9 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_user oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_user usename 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_user usecreatedb -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
-QT_Ora9DS pg_catalog pg_user usesuper -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testBoundTempTable testSimple.recursiveRoot.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testBoundTempTable testSimple.recursiveRoot.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testBoundTempTable testSimple.recursiveRoot.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testBoundTempTable testSimple.recursiveRoot.recurse.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testBoundTempTable testSimple.recursiveRoot.recurse.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testBoundTempTable testSimple.recursiveRoot.recurse.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testBoundTempTable testSimple.recursiveRoot.recurse.recurse.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testBoundTempTable testSimple.recursiveRoot.recurse.recurse.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testBoundTempTable testSimple.recursiveRoot.recurse.recurse.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testBoundTempTable testSimple.recursiveRoot.recurse.recurse.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testBoundTempTable testSimple.recursiveRoot.recurse.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testBoundTempTable testSimple.recursiveRoot.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testBoundTempTable testSimple.recursiveRoot 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testBoundTempTable testSimple 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testBoundTempTable.MappingClasses.TemporaryTable1 key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testBoundTempTable.MappingClasses.TemporaryTable1 data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testBoundTempTable.MappingClasses.TemporaryTable1 nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testBoundTempTable.MappingClasses.TemporaryTable2 key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testBoundTempTable.MappingClasses.TemporaryTable2 data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testBoundTempTable.MappingClasses.TemporaryTable2 nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testBoundTempTable.MappingClasses.nested key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testBoundTempTable.MappingClasses.nested data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testBoundTempTable.MappingClasses.nested nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testBoundTempTable.MappingClasses.nested1 key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testBoundTempTable.MappingClasses.nested1 data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testBoundTempTable.MappingClasses.nested1 nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testBoundTempTable.MappingClasses.root key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testBoundTempTable.MappingClasses.root data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testBoundTempTable.MappingClasses.root nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testExcludeFromDoc testSimple.recursiveRoot.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testExcludeFromDoc testSimple.recursiveRoot.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testExcludeFromDoc testSimple.recursiveRoot.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testExcludeFromDoc testSimple.recursiveRoot.recurse.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testExcludeFromDoc testSimple.recursiveRoot.recurse.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testExcludeFromDoc testSimple.recursiveRoot.recurse.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testExcludeFromDoc testSimple.recursiveRoot.recurse.recurse.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testExcludeFromDoc testSimple.recursiveRoot.recurse.recurse.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testExcludeFromDoc testSimple.recursiveRoot.recurse.recurse.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testExcludeFromDoc testSimple.recursiveRoot.recurse.recurse.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testExcludeFromDoc testSimple.recursiveRoot.recurse.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testExcludeFromDoc testSimple.recursiveRoot.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testExcludeFromDoc testSimple.recursiveRoot 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testExcludeFromDoc testSimple 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testExcludeFromDoc.MappingClasses.nested key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testExcludeFromDoc.MappingClasses.nested data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testExcludeFromDoc.MappingClasses.nested nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testExcludeFromDoc.MappingClasses.nested1 key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testExcludeFromDoc.MappingClasses.nested1 data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testExcludeFromDoc.MappingClasses.nested1 nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testExcludeFromDoc.MappingClasses.root key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testExcludeFromDoc.MappingClasses.root data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testExcludeFromDoc.MappingClasses.root nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNested2Document testNested2.recursiveRoot.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNested2Document testNested2.recursiveRoot.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNested2Document testNested2.recursiveRoot.nested.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNested2Document testNested2.recursiveRoot.nested.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNested2Document testNested2.recursiveRoot.nested.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNested2Document testNested2.recursiveRoot.nested 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNested2Document testNested2.recursiveRoot.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNested2Document testNested2.recursiveRoot.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNested2Document testNested2.recursiveRoot 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNested2Document testNested2 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNested2Document.MappingClasses.nested key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNested2Document.MappingClasses.nested data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNested2Document.MappingClasses.nested nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNested2Document.MappingClasses.recurse key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNested2Document.MappingClasses.recurse data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNested2Document.MappingClasses.recurse nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNested2Document.MappingClasses.recursiveRoot key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNested2Document.MappingClasses.recursiveRoot data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNested2Document.MappingClasses.recursiveRoot nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNestedDocument testNested.recursiveRoot.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNestedDocument testNested.recursiveRoot.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNestedDocument testNested.recursiveRoot.nested.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNestedDocument testNested.recursiveRoot.nested.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNestedDocument testNested.recursiveRoot.nested.nestedRecurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNestedDocument testNested.recursiveRoot.nested.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNestedDocument testNested.recursiveRoot.nested 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNestedDocument testNested.recursiveRoot.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNestedDocument testNested.recursiveRoot.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNestedDocument testNested.recursiveRoot 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNestedDocument testNested 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNestedDocument.MappingClasses.nested key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNestedDocument.MappingClasses.nested data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNestedDocument.MappingClasses.nested nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNestedDocument.MappingClasses.nestedRecurse key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNestedDocument.MappingClasses.nestedRecurse data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNestedDocument.MappingClasses.nestedRecurse nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNestedDocument.MappingClasses.recurse key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNestedDocument.MappingClasses.recurse data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNestedDocument.MappingClasses.recurse nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNestedDocument.MappingClasses.recursiveRoot key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNestedDocument.MappingClasses.recursiveRoot data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testNestedDocument.MappingClasses.recursiveRoot nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testOptimizableTempTable testSimple.recursiveRoot.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testOptimizableTempTable testSimple.recursiveRoot.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testOptimizableTempTable testSimple.recursiveRoot.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testOptimizableTempTable testSimple.recursiveRoot.recurse.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testOptimizableTempTable testSimple.recursiveRoot.recurse.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testOptimizableTempTable testSimple.recursiveRoot.recurse.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testOptimizableTempTable testSimple.recursiveRoot.recurse.recurse.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testOptimizableTempTable testSimple.recursiveRoot.recurse.recurse.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testOptimizableTempTable testSimple.recursiveRoot.recurse.recurse.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testOptimizableTempTable testSimple.recursiveRoot.recurse.recurse.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testOptimizableTempTable testSimple.recursiveRoot.recurse.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testOptimizableTempTable testSimple.recursiveRoot.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testOptimizableTempTable testSimple.recursiveRoot 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testOptimizableTempTable testSimple 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testOptimizableTempTable.MappingClasses.TemporaryTable1 key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testOptimizableTempTable.MappingClasses.TemporaryTable1 data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testOptimizableTempTable.MappingClasses.TemporaryTable1 nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testOptimizableTempTable.MappingClasses.moveToRootTempTable key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testOptimizableTempTable.MappingClasses.moveToRootTempTable data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testOptimizableTempTable.MappingClasses.moveToRootTempTable nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testOptimizableTempTable.MappingClasses.nested key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testOptimizableTempTable.MappingClasses.nested data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testOptimizableTempTable.MappingClasses.nested nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testOptimizableTempTable.MappingClasses.nested1 key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testOptimizableTempTable.MappingClasses.nested1 data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testOptimizableTempTable.MappingClasses.nested1 nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testOptimizableTempTable.MappingClasses.root key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testOptimizableTempTable.MappingClasses.root data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testOptimizableTempTable.MappingClasses.root nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testRootTempTable testSimple.recursiveRoot.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testRootTempTable testSimple.recursiveRoot.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testRootTempTable testSimple.recursiveRoot.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testRootTempTable testSimple.recursiveRoot.recurse.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testRootTempTable testSimple.recursiveRoot.recurse.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testRootTempTable testSimple.recursiveRoot.recurse.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testRootTempTable testSimple.recursiveRoot.recurse.recurse.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testRootTempTable testSimple.recursiveRoot.recurse.recurse.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testRootTempTable testSimple.recursiveRoot.recurse.recurse.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testRootTempTable testSimple.recursiveRoot.recurse.recurse.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testRootTempTable testSimple.recursiveRoot.recurse.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testRootTempTable testSimple.recursiveRoot.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testRootTempTable testSimple.recursiveRoot 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testRootTempTable testSimple 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testRootTempTable.MappingClasses.TemporaryTable1 key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testRootTempTable.MappingClasses.TemporaryTable1 data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testRootTempTable.MappingClasses.TemporaryTable1 nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testRootTempTable.MappingClasses.nested key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testRootTempTable.MappingClasses.nested data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testRootTempTable.MappingClasses.nested nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testRootTempTable.MappingClasses.nested1 key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testRootTempTable.MappingClasses.nested1 data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testRootTempTable.MappingClasses.nested1 nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testRootTempTable.MappingClasses.root key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testRootTempTable.MappingClasses.root data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testRootTempTable.MappingClasses.root nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testSimpleDocument testSimple.recursiveRoot.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testSimpleDocument testSimple.recursiveRoot.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testSimpleDocument testSimple.recursiveRoot.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testSimpleDocument testSimple.recursiveRoot.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testSimpleDocument testSimple.recursiveRoot 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testSimpleDocument testSimple 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testSimpleDocument.MappingClasses.recurse key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testSimpleDocument.MappingClasses.recurse data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testSimpleDocument.MappingClasses.recurse nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testSimpleDocument.MappingClasses.recursiveRoot key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testSimpleDocument.MappingClasses.recursiveRoot data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testSimpleDocument.MappingClasses.recursiveRoot nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testSimpleNested testSimple.recursiveRoot.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testSimpleNested testSimple.recursiveRoot.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testSimpleNested testSimple.recursiveRoot.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testSimpleNested testSimple.recursiveRoot.recurse.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testSimpleNested testSimple.recursiveRoot.recurse.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testSimpleNested testSimple.recursiveRoot.recurse.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testSimpleNested testSimple.recursiveRoot.recurse.recurse.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testSimpleNested testSimple.recursiveRoot.recurse.recurse.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testSimpleNested testSimple.recursiveRoot.recurse.recurse.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testSimpleNested testSimple.recursiveRoot.recurse.recurse.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testSimpleNested testSimple.recursiveRoot.recurse.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testSimpleNested testSimple.recursiveRoot.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testSimpleNested testSimple.recursiveRoot 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testSimpleNested testSimple 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testSimpleNested.MappingClasses.nested key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testSimpleNested.MappingClasses.nested data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testSimpleNested.MappingClasses.nested nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testSimpleNested.MappingClasses.nested1 key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testSimpleNested.MappingClasses.nested1 data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testSimpleNested.MappingClasses.nested1 nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testSimpleNested.MappingClasses.root key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testSimpleNested.MappingClasses.root data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTNestedDoc testSimpleNested.MappingClasses.root nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testSimpleTempTable testSimple.recursiveRoot.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testSimpleTempTable testSimple.recursiveRoot.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testSimpleTempTable testSimple.recursiveRoot.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testSimpleTempTable testSimple.recursiveRoot.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testSimpleTempTable testSimple.recursiveRoot 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testSimpleTempTable testSimple 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testSimpleTempTable.MappingClasses.TemporaryTable1 key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testSimpleTempTable.MappingClasses.TemporaryTable1 data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testSimpleTempTable.MappingClasses.TemporaryTable1 nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testSimpleTempTable.MappingClasses.recurse key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testSimpleTempTable.MappingClasses.recurse data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testSimpleTempTable.MappingClasses.recurse nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testSimpleTempTable.MappingClasses.recursiveRoot key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testSimpleTempTable.MappingClasses.recursiveRoot data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTRecursiveDoc testSimpleTempTable.MappingClasses.recursiveRoot nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQT xqtData key 2 biginteger 19 <null> 0 10 0 <null> <null> <null> <null> 1 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS XQT xqtData data 2 biginteger 19 <null> 0 10 0 <null> <null> <null> <null> 1 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS XQT xqtData nextKey 2 biginteger 19 <null> 0 10 0 <null> <null> <null> <null> 1 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS XQT xqtFullData IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS XQT xqtFullData StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS XQT xqtFullData IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQT xqtFullData StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQT xqtFullData FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQT xqtFullData LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQT xqtFullData DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQT xqtFullData ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQT xqtFullData DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQT xqtFullData TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQT xqtFullData TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQT xqtFullData BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQT xqtFullData CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQT xqtFullData ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQT xqtFullData BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQT xqtFullData BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS XQT xqtFullData ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
+string string string string integer string integer string integer integer integer string string string string integer integer string string string string !
string string
+TABLE_CAT TABLE_SCHEM TABLE_NAME COLUMN_NAME DATA_TYPE TYPE_NAME COLUMN_SIZE BUFFER_LENGTH DECIMAL_DIGITS NUM_PREC_RADIX NULLABLE REMARKS COLUMN_DEF SQL_DATA_TYPE SQL_DATETIME_SUB CHAR_OCTET_LENGTH ORDINAL_POSITION IS_NULLABLE SCOPE_CATALOG SCOPE_SCHEMA SCOPE_TAB!
LE SOURCE_DATA_TYPE IS_AUTOINCREMENT
+QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.BigDecimalValue 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.BigIntegerValue 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.BooleanValue 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.ByteNum 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.CharValue 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.DateValue 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.DoubleNum 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.FloatNum 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.IntKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.IntNum 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.LongNum 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.ObjectValue 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.ShortValue 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.StringKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.StringNum 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.TimestampValue 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow.TimeValue 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow IntKey 4 integer 10 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow StringKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow IntNum 4 integer 10 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow StringNum 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow FloatNum 7 float 20 <null> 0 0 1 <null> <null> <null> <null> 0 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow LongNum -5 long 19 <null> 0 0 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow DoubleNum 8 double 20 <null> 0 0 1 <null> <null> <null> <null> 0 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow ByteNum -6 byte 3 <null> 0 0 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow DateValue 91 date 10 <null> 0 0 1 <null> <null> <null> <null> 0 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow TimeValue 92 time 8 <null> 0 0 1 <null> <null> <null> <null> 0 10 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow TimestampValue 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 11 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow BooleanValue -7 boolean 1 <null> 0 0 1 <null> <null> <null> <null> 0 12 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow CharValue 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 13 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow ShortValue 5 short 5 <null> 0 0 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow BigIntegerValue 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 15 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow BigDecimalValue 2 bigdecimal 20 <null> 0 0 1 <null> <null> <null> <null> 0 16 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc BQTDocTestDocument.MappingClasses.SingleRow ObjectValue <null> <null> <null> <null> 0 0 1 <null> <null> <null> <null> 0 17 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Agg1 StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Agg2 StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Agg3 count 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 1 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Agg4 min 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Agg4 sum -5 long 19 <null> 0 10 0 <null> <null> <null> <null> 1 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Agg4 avg 8 double 20 <null> 0 10 0 <null> <null> <null> <null> 1 3 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Expr1 StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Expr1 expr 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Expr2 StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Expr2 E 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Expr3 expr 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Expr4 E 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Expr5 E 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 20 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Expr6 StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Expr6 expr 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Expr7 StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Expr7 E 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping1 IntKey 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping1 StringKey 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping1 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping1 StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping1 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping1 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping1 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping1 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping1 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping1 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping1 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping1 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping1 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping1 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping1 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping1 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping1 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping2 IntKey 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping2 StringKey 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping2 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping2 StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping2 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping2 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping2 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping2 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping2 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping2 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping2 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping2 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping2 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping2 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping2 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping2 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping2 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping3 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping3 StringKey 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping3 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping3 StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping3 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping3 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping3 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping3 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping3 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping3 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping3 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping3 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping3 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping3 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping3 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping3 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping3 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping4 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping4 StringKey 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping4 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping4 StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping4 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping4 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping4 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping4 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping4 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping4 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping4 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping4 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping4 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping4 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping4 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping4 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Mapping4 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order1 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order1 StringKey 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order1 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order1 StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order1 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order1 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order1 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order1 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order1 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order1 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order1 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order1 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order1 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order1 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order1 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order1 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order1 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order2 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order2 StringKey 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order2 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order2 StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order2 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order2 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order2 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order2 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order2 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order2 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order2 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order2 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order2 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order2 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order2 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order2 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order2 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order3 E 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 20 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order4 StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Base.Order5 StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Columns VDBName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Columns SchemaName 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Columns TableName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 3 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Columns Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 4 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Columns Position 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 5 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Columns NameInSource 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Columns DataType 12 string 100 <null> 0 10 0 <null> <null> <null> <null> 100 7 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Columns Scale 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 8 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Columns Length 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 9 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Columns IsLengthFixed -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 10 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Columns SupportsSelect -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 11 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Columns SupportsUpdates -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 12 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Columns IsCaseSensitive -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 13 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Columns IsSigned -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 14 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Columns IsCurrency -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 15 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Columns IsAutoIncremented -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 16 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Columns NullType 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 17 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Columns MinRange 12 string 50 <null> 0 10 1 <null> <null> <null> <null> 50 18 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Columns MaxRange 12 string 50 <null> 0 10 1 <null> <null> <null> <null> 50 19 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Columns DistinctCount 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 20 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Columns NullCount 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 21 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Columns SearchType 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 22 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Columns Format 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 23 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Columns DefaultValue 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 24 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Columns JavaClass 12 string 500 <null> 0 10 0 <null> <null> <null> <null> 500 25 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Columns Precision 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 26 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Columns CharOctetLength 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 27 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Columns Radix 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 28 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Columns UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 29 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Columns Description 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 30 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Columns OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 31 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS DataTypes Name 12 string 100 <null> 0 10 0 <null> <null> <null> <null> 100 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS DataTypes IsStandard -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS DataTypes IsPhysical -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS DataTypes TypeName 12 string 100 <null> 0 10 0 <null> <null> <null> <null> 100 4 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS DataTypes JavaClass 12 string 500 <null> 0 10 0 <null> <null> <null> <null> 500 5 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS DataTypes Scale 4 integer 10 <null> 0 10 1 <null> (0) <null> <null> 10 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS DataTypes TypeLength 4 integer 10 <null> 0 10 0 <null> (0) <null> <null> 10 7 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS DataTypes NullType 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 8 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS DataTypes IsSigned -7 boolean 1 <null> 0 10 0 <null> ('0') <null> <null> 1 9 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS DataTypes IsAutoIncremented -7 boolean 1 <null> 0 10 0 <null> ('0') <null> <null> 1 10 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS DataTypes IsCaseSensitive -7 boolean 1 <null> 0 10 0 <null> ('0') <null> <null> 1 11 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS DataTypes Precision 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 12 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS DataTypes Radix 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 13 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS DataTypes SearchType 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 14 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS DataTypes UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 15 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS DataTypes RuntimeType 12 string 64 <null> 0 10 1 <null> <null> <null> <null> 64 16 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS DataTypes BaseType 12 string 64 <null> 0 10 1 <null> <null> <null> <null> 64 17 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS DataTypes Description 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 18 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS DataTypes OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 19 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeA IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeA IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeA StringKey 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeA StringKey 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeA IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeA IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeA StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeA StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeA FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeA FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeA LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeA LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeA DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeA DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeA ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeA ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeA DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeA DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeA TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeA TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeA TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeA TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeA BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeA BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeA CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeA CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeA ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeA ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeA BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeA BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeA BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeA BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeA ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeA ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeB IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeB IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeB StringKey 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeB StringKey 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeB IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeB IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeB StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeB StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeB FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeB FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeB LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeB LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeB DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeB DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeB ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeB ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeB DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeB DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeB TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeB TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeB TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeB TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeB BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeB BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeB CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeB CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeB ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeB ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeB BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeB BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeB BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeB BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 HugeB ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 HugeB ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS KeyColumns VDBName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS KeyColumns SchemaName 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS KeyColumns TableName 12 string 2048 <null> 0 10 0 <null> <null> <null> <null> 2048 3 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS KeyColumns Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 4 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS KeyColumns KeyName 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS KeyColumns KeyType 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 6 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS KeyColumns RefKeyUID 12 string 50 <null> 0 10 1 <null> <null> <null> <null> 50 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS KeyColumns UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 8 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS KeyColumns Position 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS KeyColumns OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 10 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Keys VDBName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Keys SchemaName 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Keys TableName 12 string 2048 <null> 0 10 0 <null> <null> <null> <null> 2048 3 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Keys Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 4 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Keys Description 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Keys NameInSource 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Keys Type 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 7 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Keys IsIndexed -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 8 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Keys RefKeyUID 12 string 50 <null> 0 10 1 <null> <null> <null> <null> 50 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Keys UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 10 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Keys OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 11 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeA IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeA IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeA StringKey 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeA StringKey 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeA IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeA IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeA StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeA StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeA FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeA FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeA LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeA LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeA DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeA DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeA ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeA ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeA DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeA DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeA TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeA TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeA TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeA TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeA BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeA BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeA CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeA CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeA ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeA ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeA BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeA BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeA BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeA BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeA ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeA ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeB IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeB IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeB StringKey 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeB StringKey 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeB IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeB IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeB StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeB StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeB FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeB FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeB LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeB LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeB DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeB DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeB ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeB ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeB DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeB DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeB TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeB TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeB TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeB TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeB BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeB BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeB CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeB CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeB ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeB ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeB BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeB BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeB BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeB BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 LargeB ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 LargeB ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYSADMIN MatViews VDBName 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYSADMIN MatViews SchemaName 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 255 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYSADMIN MatViews Name 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 255 3 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYSADMIN MatViews TargetSchemaName 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 255 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYSADMIN MatViews TargetName 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 4000 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYSADMIN MatViews Valid -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYSADMIN MatViews LoadState 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 255 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYSADMIN MatViews Updated 93 timestamp 29 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYSADMIN MatViews Cardinality 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumA IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumA IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumA StringKey 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumA StringKey 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumA IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumA IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumA StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumA StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumA FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumA FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumA LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumA LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumA DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumA DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumA ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumA ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumA DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumA DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumA TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumA TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumA TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumA TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumA BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumA BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumA CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumA CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumA ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumA ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumA BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumA BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumA BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumA BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumA ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumA ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumB IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumB IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumB StringKey 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumB StringKey 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumB IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumB IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumB StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumB StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumB FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumB FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumB LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumB LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumB DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumB DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumB ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumB ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumB DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumB DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumB TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumB TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumB TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumB TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumB BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumB BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumB CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumB CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumB ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumB ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumB BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumB BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumB BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumB BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 MediumB ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 MediumB ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS ProcedureParams VDBName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS ProcedureParams SchemaName 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS ProcedureParams ProcedureName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 3 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS ProcedureParams Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 4 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS ProcedureParams DataType 12 string 25 <null> 0 10 0 <null> <null> <null> <null> 25 5 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS ProcedureParams Position 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 6 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS ProcedureParams Type 12 string 100 <null> 0 10 0 <null> <null> <null> <null> 100 7 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS ProcedureParams Optional -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 8 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS ProcedureParams Precision 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 9 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS ProcedureParams TypeLength 4 integer 10 <null> 0 10 0 <null> (0) <null> <null> 10 10 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS ProcedureParams Scale 4 integer 10 <null> 0 10 0 <null> (0) <null> <null> 10 11 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS ProcedureParams Radix 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 12 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS ProcedureParams NullType 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 13 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS ProcedureParams UID 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 50 14 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS ProcedureParams Description 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 255 15 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS ProcedureParams OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 16 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Procedures VDBName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Procedures SchemaName 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Procedures Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 3 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Procedures NameInSource 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Procedures ReturnsResults -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 5 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Procedures UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 6 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Procedures Description 12 string 225 <null> 0 10 1 <null> <null> <null> <null> 255 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Procedures OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 8 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Properties Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Properties Value 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Properties UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 3 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Properties OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 4 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Properties ClobValue 2005 clob 2097152 <null> 0 10 1 <null> <null> <null> <null> 2097152 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS ReferenceKeyColumns PKTABLE_CAT 12 string 1 <null> 0 10 1 <null> <null> <null> <null> 255 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS ReferenceKeyColumns PKTABLE_SCHEM 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS ReferenceKeyColumns PKTABLE_NAME 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS ReferenceKeyColumns PKCOLUMN_NAME 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS ReferenceKeyColumns FKTABLE_CAT 12 string 1 <null> 0 10 1 <null> <null> <null> <null> 255 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS ReferenceKeyColumns FKTABLE_SCHEM 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS ReferenceKeyColumns FKTABLE_NAME 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS ReferenceKeyColumns FKCOLUMN_NAME 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 8 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS ReferenceKeyColumns KEY_SEQ 5 short 5 <null> 0 10 1 <null> <null> <null> <null> 5 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS ReferenceKeyColumns UPDATE_RULE 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 10 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS ReferenceKeyColumns DELETE_RULE 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 11 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS ReferenceKeyColumns FK_NAME 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 12 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS ReferenceKeyColumns PK_NAME 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 13 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS ReferenceKeyColumns DEFERRABILITY 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 14 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Schemas VDBName 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 255 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Schemas Name 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Schemas IsPhysical -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 3 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Schemas UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 4 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Schemas Description 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Schemas PrimaryMetamodelURI 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 6 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Schemas OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 7 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallA IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallA IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallA StringKey 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallA StringKey 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallA IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallA IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallA StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallA StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallA FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallA FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallA LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallA LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallA DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallA DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallA ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallA ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallA DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallA DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallA TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallA TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallA TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallA TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallA BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallA BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallA CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallA CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallA ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallA ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallA BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallA BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallA BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallA BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallA ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallA ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallB IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallB IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallB StringKey 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallB StringKey 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallB IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallB IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallB StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallB StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallB FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallB FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallB LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallB LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallB DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallB DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallB ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallB ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallB DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallB DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallB TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallB TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallB TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallB TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallB BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallB BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallB CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallB CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallB ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallB ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallB BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallB BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallB BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallB BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT1 SmallB ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS BQT2 SmallB ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Tables VDBName 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 255 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Tables SchemaName 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Tables Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 3 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Tables Type 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 4 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Tables NameInSource 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Tables IsPhysical -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 6 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Tables SupportsUpdates -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 7 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Tables UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 8 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Tables Cardinality 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 9 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Tables Description 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 10 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Tables IsSystem -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 11 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Tables IsMaterialized -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 0 12 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS Tables OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 13 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U1 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U1 StringKey 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U1 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U1 StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U1 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U1 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U1 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U1 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U1 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U1 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U1 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U1 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U1 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U1 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U1 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U1 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U1 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U10 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U10 StringKey 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U10 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U10 StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U10 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U10 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U10 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U10 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U10 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U10 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U10 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U10 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U10 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U10 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U10 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U10 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U10 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U11 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U11 StringKey 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U2 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U2 StringKey 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U2 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U2 StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U2 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U2 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U2 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U2 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U2 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U2 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U2 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U2 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U2 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U2 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U2 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U2 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U2 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U3 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U3 StringKey 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U3 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U3 StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U3 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U3 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U3 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U3 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U3 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U3 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U3 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U3 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U3 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U3 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U3 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U3 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U3 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U4 A 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U4 B 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U4 C 7 float 20 <null> 0 10 0 <null> <null> <null> <null> 126 3 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U5 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U5 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U5 Source 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 3 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U6 StringCol 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U6 IntCol 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U7 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U7 StringKey 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U7 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U7 StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U7 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U7 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U7 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U7 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U7 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U7 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U7 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U7 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U7 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U7 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U7 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U7 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U7 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U8 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U8 StringKey 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U8 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U8 StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U8 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U8 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U8 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U8 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U8 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U8 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U8 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U8 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U8 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U8 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U8 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U8 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U8 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U9 A 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U9 B 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS VQT Union.U9 C 7 float 20 <null> 0 10 0 <null> <null> <null> <null> 126 3 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYSADMIN VDBResources resourcePath 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 255 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYSADMIN VDBResources contents 2004 blob 2147483647 <null> 0 10 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS VirtualDatabases Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS SYS VirtualDatabases Version 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc choiceTestDocument choiceTest.data1.wrapper1.data1 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc choiceTestDocument choiceTest.data1.wrapper1.key1 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc choiceTestDocument choiceTest.data1.wrapper1 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc choiceTestDocument choiceTest.data1 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc choiceTestDocument choiceTest.data2.wrapper2.data2 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc choiceTestDocument choiceTest.data2.wrapper2.key2 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc choiceTestDocument choiceTest.data2.wrapper2 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc choiceTestDocument choiceTest.data2 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc choiceTestDocument choiceTest.data3.wrapper3.key3.data3 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc choiceTestDocument choiceTest.data3.wrapper3.key3 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc choiceTestDocument choiceTest.data3.wrapper3 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc choiceTestDocument choiceTest.data3 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc choiceTestDocument choiceTest 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc choiceTestDocument.MappingClasses.choiceTest key1 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc choiceTestDocument.MappingClasses.choiceTest data1 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc choiceTestDocument.MappingClasses.choiceTest data2 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc choiceTestDocument.MappingClasses.choiceTest key2 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc choiceTestDocument.MappingClasses.choiceTest key3 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc choiceTestDocument.MappingClasses.choiceTest data3 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc defaultValueTestDocument defaultValueTest.wrapper. at dataAttr 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc defaultValueTestDocument defaultValueTest.wrapper.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc defaultValueTestDocument defaultValueTest.wrapper.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc defaultValueTestDocument defaultValueTest.wrapper 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc defaultValueTestDocument defaultValueTest 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc defaultValueTestDocument.MappingClasses.wrapper key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc defaultValueTestDocument.MappingClasses.wrapper data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc defaultValueTestDocument.MappingClasses.wrapper dataAttr 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc emptyContentTestDocument emptyContentTest.wrapper1.data1 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc emptyContentTestDocument emptyContentTest.wrapper1.key1 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc emptyContentTestDocument emptyContentTest.wrapper1 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc emptyContentTestDocument emptyContentTest 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc emptyContentTestDocument.MappingClasses.wrapper1 key1 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc emptyContentTestDocument.MappingClasses.wrapper1 data1 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc fixedValueTestDocument fixedValueTest.wrapper. at fixedAttr 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc fixedValueTestDocument fixedValueTest.wrapper.fixed 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc fixedValueTestDocument fixedValueTest.wrapper.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc fixedValueTestDocument fixedValueTest.wrapper 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc fixedValueTestDocument fixedValueTest 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc fixedValueTestDocument.MappingClasses.wrapper key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupA.code 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupA.ID 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupA.supervisor.code 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupA.supervisor.groupID 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupA.supervisor.group 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupA.supervisor.ID 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupA.supervisorID 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupA.supervisor 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupA 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupB.code 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupB.ID 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupB.supervisor.code 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupB.supervisor.groupID 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupB.supervisor.group 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupB.supervisor.ID 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupB.supervisorID 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupB.supervisor 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc groupDocument group.GroupB 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc groupDocument group.pseudoID 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc groupDocument group 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc groupDocument.MappingClasses.group ID 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc groupDocument.MappingClasses.group code 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc groupDocument.MappingClasses.group supervisorID 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc groupDocument.MappingClasses.group1 ID 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc groupDocument.MappingClasses.group1 code 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc groupDocument.MappingClasses.group1 supervisorID 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc groupDocument.MappingClasses.supervisor ID 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc groupDocument.MappingClasses.supervisor code 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc groupDocument.MappingClasses.supervisor groupID 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog matpg_datatype oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog matpg_datatype typname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog matpg_datatype name 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog matpg_datatype uid 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog matpg_datatype typlen 5 short 5 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog matpg_relatt attrelid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog matpg_relatt attnum 5 short 5 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog matpg_relatt attname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog matpg_relatt relname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog matpg_relatt nspname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog matpg_relatt autoinc -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 6 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog matpg_relatt typoid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 7 <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc mixedContentTestDocument mixedContentTest.wrapper3.key3.data3 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc mixedContentTestDocument mixedContentTest.wrapper3.key3 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc mixedContentTestDocument mixedContentTest.wrapper3 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc mixedContentTestDocument mixedContentTest 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc mixedContentTestDocument.MappingClasses.wrapper3 key3 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc mixedContentTestDocument.MappingClasses.wrapper3 data3 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc multipleDocsTestDocument multipleDocsTest.data1 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc multipleDocsTestDocument multipleDocsTest.key1 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc multipleDocsTestDocument multipleDocsTest 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc multipleDocsTestDocument.MappingClasses.multipleDocsTest key1 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc multipleDocsTestDocument.MappingClasses.multipleDocsTest data1 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc nillableTestDocument nillableTest.wrapper.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc nillableTestDocument nillableTest.wrapper.nillableField 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc nillableTestDocument nillableTest.wrapper 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc nillableTestDocument nillableTest 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc nillableTestDocument.MappingClasses.wrapper key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTDoc nillableTestDocument.MappingClasses.wrapper nillableField 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_am oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_am amname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_attrdef adrelid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_attrdef adnum 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_attrdef adbin 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_attrdef adsrc 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_attribute oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_attribute attrelid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_attribute attname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_attribute atttypid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_attribute attlen 5 short 5 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_attribute attnum 5 short 5 <null> 0 0 2 <null> <null> <null> <null> 0 6 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_attribute atttypmod 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 7 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_attribute attnotnull -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 8 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_attribute attisdropped -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 9 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_attribute atthasdef -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 10 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_class oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_class relname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_class relnamespace 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_class relkind 1 char 1 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_class relam 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_class reltuples 7 float 20 <null> 0 0 2 <null> <null> <null> <null> 0 6 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_class relpages 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 7 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_class relhasrules -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 8 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_class relhasoids -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 9 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_database oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_database datname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_database encoding 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_database datlastsysoid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_database datallowconn 1 char 1 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_database datconfig 2000 object 2147483647 <null> 0 0 2 <null> <null> <null> <null> 0 6 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_database datacl 2000 object 2147483647 <null> 0 0 2 <null> <null> <null> <null> 0 7 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_database datdba 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 8 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_database dattablespace 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 9 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_index oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_index indexrelid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_index indrelid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_index indisclustered -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_index indisunique -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_index indisprimary -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 6 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_index indexprs 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 7 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_index indkey 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 8 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_namespace oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_namespace nspname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_proc oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_proc proname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_proc proretset -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_proc prorettype 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_proc pronargs 5 short 5 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_proc proargtypes 2000 object 2147483647 <null> 0 0 2 <null> <null> <null> <null> 0 6 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_proc proargnames 2000 object 2147483647 <null> 0 0 2 <null> <null> <null> <null> 0 7 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_proc proargmodes 2000 object 2147483647 <null> 0 0 2 <null> <null> <null> <null> 0 8 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_proc proallargtypes 2000 object 2147483647 <null> 0 0 2 <null> <null> <null> <null> 0 9 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_proc pronamespace 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 10 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_trigger oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_trigger tgconstrrelid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_trigger tgfoid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_trigger tgargs 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_trigger tgnargs 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_trigger tgdeferrable -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 6 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_trigger tginitdeferred -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 7 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_trigger tgconstrname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 8 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_trigger tgrelid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 9 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_type oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_type typname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_type typnamespace 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_type typlen 5 short 5 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_type typtype 1 char 1 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_type typbasetype 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 6 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_type typtypmod 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 7 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_type typrelid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 8 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_type typelem 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 9 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_user oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_user usename 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_user usecreatedb -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
+QT_Ora9DS pg_catalog pg_user usesuper -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testBoundTempTable testSimple.recursiveRoot.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testBoundTempTable testSimple.recursiveRoot.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testBoundTempTable testSimple.recursiveRoot.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testBoundTempTable testSimple.recursiveRoot.recurse.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testBoundTempTable testSimple.recursiveRoot.recurse.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testBoundTempTable testSimple.recursiveRoot.recurse.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testBoundTempTable testSimple.recursiveRoot.recurse.recurse.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testBoundTempTable testSimple.recursiveRoot.recurse.recurse.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testBoundTempTable testSimple.recursiveRoot.recurse.recurse.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testBoundTempTable testSimple.recursiveRoot.recurse.recurse.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testBoundTempTable testSimple.recursiveRoot.recurse.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testBoundTempTable testSimple.recursiveRoot.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testBoundTempTable testSimple.recursiveRoot 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testBoundTempTable testSimple 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testBoundTempTable.MappingClasses.TemporaryTable1 key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testBoundTempTable.MappingClasses.TemporaryTable1 data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testBoundTempTable.MappingClasses.TemporaryTable1 nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testBoundTempTable.MappingClasses.TemporaryTable2 key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testBoundTempTable.MappingClasses.TemporaryTable2 data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testBoundTempTable.MappingClasses.TemporaryTable2 nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testBoundTempTable.MappingClasses.nested key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testBoundTempTable.MappingClasses.nested data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testBoundTempTable.MappingClasses.nested nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testBoundTempTable.MappingClasses.nested1 key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testBoundTempTable.MappingClasses.nested1 data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testBoundTempTable.MappingClasses.nested1 nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testBoundTempTable.MappingClasses.root key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testBoundTempTable.MappingClasses.root data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testBoundTempTable.MappingClasses.root nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testExcludeFromDoc testSimple.recursiveRoot.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testExcludeFromDoc testSimple.recursiveRoot.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testExcludeFromDoc testSimple.recursiveRoot.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testExcludeFromDoc testSimple.recursiveRoot.recurse.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testExcludeFromDoc testSimple.recursiveRoot.recurse.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testExcludeFromDoc testSimple.recursiveRoot.recurse.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testExcludeFromDoc testSimple.recursiveRoot.recurse.recurse.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testExcludeFromDoc testSimple.recursiveRoot.recurse.recurse.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testExcludeFromDoc testSimple.recursiveRoot.recurse.recurse.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testExcludeFromDoc testSimple.recursiveRoot.recurse.recurse.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testExcludeFromDoc testSimple.recursiveRoot.recurse.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testExcludeFromDoc testSimple.recursiveRoot.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testExcludeFromDoc testSimple.recursiveRoot 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testExcludeFromDoc testSimple 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testExcludeFromDoc.MappingClasses.nested key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testExcludeFromDoc.MappingClasses.nested data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testExcludeFromDoc.MappingClasses.nested nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testExcludeFromDoc.MappingClasses.nested1 key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testExcludeFromDoc.MappingClasses.nested1 data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testExcludeFromDoc.MappingClasses.nested1 nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testExcludeFromDoc.MappingClasses.root key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testExcludeFromDoc.MappingClasses.root data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testExcludeFromDoc.MappingClasses.root nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNested2Document testNested2.recursiveRoot.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNested2Document testNested2.recursiveRoot.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNested2Document testNested2.recursiveRoot.nested.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNested2Document testNested2.recursiveRoot.nested.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNested2Document testNested2.recursiveRoot.nested.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNested2Document testNested2.recursiveRoot.nested 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNested2Document testNested2.recursiveRoot.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNested2Document testNested2.recursiveRoot.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNested2Document testNested2.recursiveRoot 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNested2Document testNested2 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNested2Document.MappingClasses.nested key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNested2Document.MappingClasses.nested data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNested2Document.MappingClasses.nested nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNested2Document.MappingClasses.recurse key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNested2Document.MappingClasses.recurse data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNested2Document.MappingClasses.recurse nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNested2Document.MappingClasses.recursiveRoot key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNested2Document.MappingClasses.recursiveRoot data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNested2Document.MappingClasses.recursiveRoot nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNestedDocument testNested.recursiveRoot.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNestedDocument testNested.recursiveRoot.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNestedDocument testNested.recursiveRoot.nested.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNestedDocument testNested.recursiveRoot.nested.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNestedDocument testNested.recursiveRoot.nested.nestedRecurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNestedDocument testNested.recursiveRoot.nested.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNestedDocument testNested.recursiveRoot.nested 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNestedDocument testNested.recursiveRoot.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNestedDocument testNested.recursiveRoot.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNestedDocument testNested.recursiveRoot 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNestedDocument testNested 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNestedDocument.MappingClasses.nested key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNestedDocument.MappingClasses.nested data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNestedDocument.MappingClasses.nested nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNestedDocument.MappingClasses.nestedRecurse key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNestedDocument.MappingClasses.nestedRecurse data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNestedDocument.MappingClasses.nestedRecurse nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNestedDocument.MappingClasses.recurse key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNestedDocument.MappingClasses.recurse data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNestedDocument.MappingClasses.recurse nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNestedDocument.MappingClasses.recursiveRoot key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNestedDocument.MappingClasses.recursiveRoot data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testNestedDocument.MappingClasses.recursiveRoot nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testOptimizableTempTable testSimple.recursiveRoot.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testOptimizableTempTable testSimple.recursiveRoot.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testOptimizableTempTable testSimple.recursiveRoot.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testOptimizableTempTable testSimple.recursiveRoot.recurse.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testOptimizableTempTable testSimple.recursiveRoot.recurse.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testOptimizableTempTable testSimple.recursiveRoot.recurse.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testOptimizableTempTable testSimple.recursiveRoot.recurse.recurse.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testOptimizableTempTable testSimple.recursiveRoot.recurse.recurse.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testOptimizableTempTable testSimple.recursiveRoot.recurse.recurse.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testOptimizableTempTable testSimple.recursiveRoot.recurse.recurse.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testOptimizableTempTable testSimple.recursiveRoot.recurse.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testOptimizableTempTable testSimple.recursiveRoot.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testOptimizableTempTable testSimple.recursiveRoot 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testOptimizableTempTable testSimple 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testOptimizableTempTable.MappingClasses.TemporaryTable1 key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testOptimizableTempTable.MappingClasses.TemporaryTable1 data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testOptimizableTempTable.MappingClasses.TemporaryTable1 nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testOptimizableTempTable.MappingClasses.moveToRootTempTable key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testOptimizableTempTable.MappingClasses.moveToRootTempTable data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testOptimizableTempTable.MappingClasses.moveToRootTempTable nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testOptimizableTempTable.MappingClasses.nested key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testOptimizableTempTable.MappingClasses.nested data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testOptimizableTempTable.MappingClasses.nested nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testOptimizableTempTable.MappingClasses.nested1 key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testOptimizableTempTable.MappingClasses.nested1 data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testOptimizableTempTable.MappingClasses.nested1 nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testOptimizableTempTable.MappingClasses.root key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testOptimizableTempTable.MappingClasses.root data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testOptimizableTempTable.MappingClasses.root nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testRootTempTable testSimple.recursiveRoot.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testRootTempTable testSimple.recursiveRoot.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testRootTempTable testSimple.recursiveRoot.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testRootTempTable testSimple.recursiveRoot.recurse.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testRootTempTable testSimple.recursiveRoot.recurse.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testRootTempTable testSimple.recursiveRoot.recurse.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testRootTempTable testSimple.recursiveRoot.recurse.recurse.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testRootTempTable testSimple.recursiveRoot.recurse.recurse.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testRootTempTable testSimple.recursiveRoot.recurse.recurse.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testRootTempTable testSimple.recursiveRoot.recurse.recurse.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testRootTempTable testSimple.recursiveRoot.recurse.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testRootTempTable testSimple.recursiveRoot.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testRootTempTable testSimple.recursiveRoot 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testRootTempTable testSimple 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testRootTempTable.MappingClasses.TemporaryTable1 key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testRootTempTable.MappingClasses.TemporaryTable1 data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testRootTempTable.MappingClasses.TemporaryTable1 nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testRootTempTable.MappingClasses.nested key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testRootTempTable.MappingClasses.nested data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testRootTempTable.MappingClasses.nested nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testRootTempTable.MappingClasses.nested1 key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testRootTempTable.MappingClasses.nested1 data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testRootTempTable.MappingClasses.nested1 nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testRootTempTable.MappingClasses.root key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testRootTempTable.MappingClasses.root data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testRootTempTable.MappingClasses.root nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testSimpleDocument testSimple.recursiveRoot.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testSimpleDocument testSimple.recursiveRoot.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testSimpleDocument testSimple.recursiveRoot.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testSimpleDocument testSimple.recursiveRoot.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testSimpleDocument testSimple.recursiveRoot 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testSimpleDocument testSimple 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testSimpleDocument.MappingClasses.recurse key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testSimpleDocument.MappingClasses.recurse data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testSimpleDocument.MappingClasses.recurse nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testSimpleDocument.MappingClasses.recursiveRoot key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testSimpleDocument.MappingClasses.recursiveRoot data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testSimpleDocument.MappingClasses.recursiveRoot nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testSimpleNested testSimple.recursiveRoot.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testSimpleNested testSimple.recursiveRoot.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testSimpleNested testSimple.recursiveRoot.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testSimpleNested testSimple.recursiveRoot.recurse.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testSimpleNested testSimple.recursiveRoot.recurse.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testSimpleNested testSimple.recursiveRoot.recurse.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testSimpleNested testSimple.recursiveRoot.recurse.recurse.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testSimpleNested testSimple.recursiveRoot.recurse.recurse.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testSimpleNested testSimple.recursiveRoot.recurse.recurse.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testSimpleNested testSimple.recursiveRoot.recurse.recurse.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testSimpleNested testSimple.recursiveRoot.recurse.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testSimpleNested testSimple.recursiveRoot.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testSimpleNested testSimple.recursiveRoot 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testSimpleNested testSimple 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testSimpleNested.MappingClasses.nested key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testSimpleNested.MappingClasses.nested data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testSimpleNested.MappingClasses.nested nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testSimpleNested.MappingClasses.nested1 key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testSimpleNested.MappingClasses.nested1 data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testSimpleNested.MappingClasses.nested1 nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testSimpleNested.MappingClasses.root key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testSimpleNested.MappingClasses.root data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTNestedDoc testSimpleNested.MappingClasses.root nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testSimpleTempTable testSimple.recursiveRoot.data 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testSimpleTempTable testSimple.recursiveRoot.key 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testSimpleTempTable testSimple.recursiveRoot.nextKey 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testSimpleTempTable testSimple.recursiveRoot.recurse 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testSimpleTempTable testSimple.recursiveRoot 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testSimpleTempTable testSimple 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testSimpleTempTable.MappingClasses.TemporaryTable1 key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testSimpleTempTable.MappingClasses.TemporaryTable1 data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testSimpleTempTable.MappingClasses.TemporaryTable1 nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testSimpleTempTable.MappingClasses.recurse key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testSimpleTempTable.MappingClasses.recurse data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testSimpleTempTable.MappingClasses.recurse nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testSimpleTempTable.MappingClasses.recursiveRoot key 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testSimpleTempTable.MappingClasses.recursiveRoot data 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQTRecursiveDoc testSimpleTempTable.MappingClasses.recursiveRoot nextKey 2 biginteger 19 <null> 0 0 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQT xqtData key 2 biginteger 19 <null> 0 10 0 <null> <null> <null> <null> 1 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS XQT xqtData data 2 biginteger 19 <null> 0 10 0 <null> <null> <null> <null> 1 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS XQT xqtData nextKey 2 biginteger 19 <null> 0 10 0 <null> <null> <null> <null> 1 3 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS XQT xqtFullData IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS XQT xqtFullData StringKey 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 2 NO <null> <null> <null> !
<null> NO
+QT_Ora9DS XQT xqtFullData IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQT xqtFullData StringNum 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 10 4 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQT xqtFullData FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQT xqtFullData LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQT xqtFullData DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQT xqtFullData ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQT xqtFullData DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQT xqtFullData TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQT xqtFullData TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQT xqtFullData BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQT xqtFullData CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQT xqtFullData ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQT xqtFullData BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQT xqtFullData BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 YES <null> <null> <null> !
<null> NO
+QT_Ora9DS XQT xqtFullData ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 YES <null> <null> <null> !
<null> NO
Row Count : 1084
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 QT_Ora9DS java.lang.String TABLE_CAT string SYS Columns 255 255 0 false false false false 0 true true false false
SchemaName 12 QT_Ora9DS java.lang.String TABLE_SCHEM string SYS Columns 255 255 0 false true false true 1 false true true true
TableName 12 QT_Ora9DS java.lang.String TABLE_NAME string SYS Columns 255 255 0 false true false false 0 true true false false
Name 12 QT_Ora9DS java.lang.String COLUMN_NAME string SYS Columns 255 255 0 false false false false 0 true true false false
-DATA_TYPE 5 QT_Ora9DS java.lang.Short DATA_TYPE short <null> <null> 6 5 0 false false false true 1 false true true true
+Length 4 QT_Ora9DS java.lang.Integer DATA_TYPE integer SYS Columns 11 10 0 false false false false 0 true true false false
DataType 12 QT_Ora9DS java.lang.String TYPE_NAME string SYS Columns 100 100 0 false true false false 0 true true true false
-COLUMN_SIZE 4 QT_Ora9DS java.lang.Integer COLUMN_SIZE integer <null> <null> 11 10 0 false false false true 1 false true true true
+Precision 4 QT_Ora9DS java.lang.Integer COLUMN_SIZE integer SYS Columns 11 10 0 false false false false 0 true true false false
BUFFER_LENGTH 12 QT_Ora9DS java.lang.String BUFFER_LENGTH string <null> <null> 4000 4000 0 false false false true 1 false true true true
Scale 4 QT_Ora9DS java.lang.Integer DECIMAL_DIGITS integer SYS Columns 11 10 0 false false false false 0 true true false false
Radix 4 QT_Ora9DS java.lang.Integer NUM_PREC_RADIX integer SYS Columns 11 10 0 false false false false 0 true true false false
Modified: trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetColumns2.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetColumns2.expected 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetColumns2.expected 2012-01-23 18:52:20 UTC (rev 3813)
@@ -1,14 +1,14 @@
-string string string string short string integer string integer integer integer string string string string integer integer string string string string !
string string
-VDBName SchemaName TableName Name DATA_TYPE DataType COLUMN_SIZE BUFFER_LENGTH Scale Radix NULLABLE Description DefaultValue SQL_DATA_TYPE SQL_DATETIME_SUB CharOctetLength Position IS_NULLABLE SCOPE_CATALOG SCOPE_SCHEMA SCOPE_TABLE !
SOURCE_DATA_TYPE IS_AUTOINCREMENT
+string string string string integer string integer string integer integer integer string string string string integer integer string string string string !
string string
+TABLE_CAT TABLE_SCHEM TABLE_NAME COLUMN_NAME DATA_TYPE TYPE_NAME COLUMN_SIZE BUFFER_LENGTH DECIMAL_DIGITS NUM_PREC_RADIX NULLABLE REMARKS COLUMN_DEF SQL_DATA_TYPE SQL_DATETIME_SUB CHAR_OCTET_LENGTH ORDINAL_POSITION IS_NULLABLE SCOPE_CATALOG SCOPE_SCHEMA SCOPE_TAB!
LE SOURCE_DATA_TYPE IS_AUTOINCREMENT
Row Count : 0
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 QT_Ora9DS java.lang.String TABLE_CAT string SYS Columns 255 255 0 false false false false 0 true true false false
SchemaName 12 QT_Ora9DS java.lang.String TABLE_SCHEM string SYS Columns 255 255 0 false true false true 1 false true true true
TableName 12 QT_Ora9DS java.lang.String TABLE_NAME string SYS Columns 255 255 0 false true false false 0 true true false false
Name 12 QT_Ora9DS java.lang.String COLUMN_NAME string SYS Columns 255 255 0 false false false false 0 true true false false
-DATA_TYPE 5 QT_Ora9DS java.lang.Short DATA_TYPE short <null> <null> 6 5 0 false false false true 1 false true true true
+Length 4 QT_Ora9DS java.lang.Integer DATA_TYPE integer SYS Columns 11 10 0 false false false false 0 true true false false
DataType 12 QT_Ora9DS java.lang.String TYPE_NAME string SYS Columns 100 100 0 false true false false 0 true true true false
-COLUMN_SIZE 4 QT_Ora9DS java.lang.Integer COLUMN_SIZE integer <null> <null> 11 10 0 false false false true 1 false true true true
+Precision 4 QT_Ora9DS java.lang.Integer COLUMN_SIZE integer SYS Columns 11 10 0 false false false false 0 true true false false
BUFFER_LENGTH 12 QT_Ora9DS java.lang.String BUFFER_LENGTH string <null> <null> 4000 4000 0 false false false true 1 false true true true
Scale 4 QT_Ora9DS java.lang.Integer DECIMAL_DIGITS integer SYS Columns 11 10 0 false false false false 0 true true false false
Radix 4 QT_Ora9DS java.lang.Integer NUM_PREC_RADIX integer SYS Columns 11 10 0 false false false false 0 true true false false
Modified: trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetColumns3.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetColumns3.expected 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetColumns3.expected 2012-01-23 18:52:20 UTC (rev 3813)
@@ -1,14 +1,14 @@
-string string string string short string integer string integer integer integer string string string string integer integer string string string string !
string string
-VDBName SchemaName TableName Name DATA_TYPE DataType COLUMN_SIZE BUFFER_LENGTH Scale Radix NULLABLE Description DefaultValue SQL_DATA_TYPE SQL_DATETIME_SUB CharOctetLength Position IS_NULLABLE SCOPE_CATALOG SCOPE_SCHEMA SCOPE_TABLE !
SOURCE_DATA_TYPE IS_AUTOINCREMENT
+string string string string integer string integer string integer integer integer string string string string integer integer string string string string !
string string
+TABLE_CAT TABLE_SCHEM TABLE_NAME COLUMN_NAME DATA_TYPE TYPE_NAME COLUMN_SIZE BUFFER_LENGTH DECIMAL_DIGITS NUM_PREC_RADIX NULLABLE REMARKS COLUMN_DEF SQL_DATA_TYPE SQL_DATETIME_SUB CHAR_OCTET_LENGTH ORDINAL_POSITION IS_NULLABLE SCOPE_CATALOG SCOPE_SCHEMA SCOPE_TAB!
LE SOURCE_DATA_TYPE IS_AUTOINCREMENT
Row Count : 0
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 QT_Ora9DS java.lang.String TABLE_CAT string SYS Columns 255 255 0 false false false false 0 true true false false
SchemaName 12 QT_Ora9DS java.lang.String TABLE_SCHEM string SYS Columns 255 255 0 false true false true 1 false true true true
TableName 12 QT_Ora9DS java.lang.String TABLE_NAME string SYS Columns 255 255 0 false true false false 0 true true false false
Name 12 QT_Ora9DS java.lang.String COLUMN_NAME string SYS Columns 255 255 0 false false false false 0 true true false false
-DATA_TYPE 5 QT_Ora9DS java.lang.Short DATA_TYPE short <null> <null> 6 5 0 false false false true 1 false true true true
+Length 4 QT_Ora9DS java.lang.Integer DATA_TYPE integer SYS Columns 11 10 0 false false false false 0 true true false false
DataType 12 QT_Ora9DS java.lang.String TYPE_NAME string SYS Columns 100 100 0 false true false false 0 true true true false
-COLUMN_SIZE 4 QT_Ora9DS java.lang.Integer COLUMN_SIZE integer <null> <null> 11 10 0 false false false true 1 false true true true
+Precision 4 QT_Ora9DS java.lang.Integer COLUMN_SIZE integer SYS Columns 11 10 0 false false false false 0 true true false false
BUFFER_LENGTH 12 QT_Ora9DS java.lang.String BUFFER_LENGTH string <null> <null> 4000 4000 0 false false false true 1 false true true true
Scale 4 QT_Ora9DS java.lang.Integer DECIMAL_DIGITS integer SYS Columns 11 10 0 false false false false 0 true true false false
Radix 4 QT_Ora9DS java.lang.Integer NUM_PREC_RADIX integer SYS Columns 11 10 0 false false false false 0 true true false false
Modified: trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetColumns4.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetColumns4.expected 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetColumns4.expected 2012-01-23 18:52:20 UTC (rev 3813)
@@ -1,14 +1,14 @@
-string string string string short string integer string integer integer integer string string string string integer integer string string string string !
string string
-VDBName SchemaName TableName Name DATA_TYPE DataType COLUMN_SIZE BUFFER_LENGTH Scale Radix NULLABLE Description DefaultValue SQL_DATA_TYPE SQL_DATETIME_SUB CharOctetLength Position IS_NULLABLE SCOPE_CATALOG SCOPE_SCHEMA SCOPE_TABLE !
SOURCE_DATA_TYPE IS_AUTOINCREMENT
+string string string string integer string integer string integer integer integer string string string string integer integer string string string string !
string string
+TABLE_CAT TABLE_SCHEM TABLE_NAME COLUMN_NAME DATA_TYPE TYPE_NAME COLUMN_SIZE BUFFER_LENGTH DECIMAL_DIGITS NUM_PREC_RADIX NULLABLE REMARKS COLUMN_DEF SQL_DATA_TYPE SQL_DATETIME_SUB CHAR_OCTET_LENGTH ORDINAL_POSITION IS_NULLABLE SCOPE_CATALOG SCOPE_SCHEMA SCOPE_TAB!
LE SOURCE_DATA_TYPE IS_AUTOINCREMENT
Row Count : 0
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 QT_Ora9DS java.lang.String TABLE_CAT string SYS Columns 255 255 0 false false false false 0 true true false false
SchemaName 12 QT_Ora9DS java.lang.String TABLE_SCHEM string SYS Columns 255 255 0 false true false true 1 false true true true
TableName 12 QT_Ora9DS java.lang.String TABLE_NAME string SYS Columns 255 255 0 false true false false 0 true true false false
Name 12 QT_Ora9DS java.lang.String COLUMN_NAME string SYS Columns 255 255 0 false false false false 0 true true false false
-DATA_TYPE 5 QT_Ora9DS java.lang.Short DATA_TYPE short <null> <null> 6 5 0 false false false true 1 false true true true
+Length 4 QT_Ora9DS java.lang.Integer DATA_TYPE integer SYS Columns 11 10 0 false false false false 0 true true false false
DataType 12 QT_Ora9DS java.lang.String TYPE_NAME string SYS Columns 100 100 0 false true false false 0 true true true false
-COLUMN_SIZE 4 QT_Ora9DS java.lang.Integer COLUMN_SIZE integer <null> <null> 11 10 0 false false false true 1 false true true true
+Precision 4 QT_Ora9DS java.lang.Integer COLUMN_SIZE integer SYS Columns 11 10 0 false false false false 0 true true false false
BUFFER_LENGTH 12 QT_Ora9DS java.lang.String BUFFER_LENGTH string <null> <null> 4000 4000 0 false false false true 1 false true true true
Scale 4 QT_Ora9DS java.lang.Integer DECIMAL_DIGITS integer SYS Columns 11 10 0 false false false false 0 true true false false
Radix 4 QT_Ora9DS java.lang.Integer NUM_PREC_RADIX integer SYS Columns 11 10 0 false false false false 0 true true false false
Modified: trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetColumnsSingleMatch.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetColumnsSingleMatch.expected 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetColumnsSingleMatch.expected 2012-01-23 18:52:20 UTC (rev 3813)
@@ -1,14 +1,14 @@
-string string string string short string integer string integer integer integer string string string string integer integer string string string string !
string string
-VDBName SchemaName TableName Name DATA_TYPE DataType COLUMN_SIZE BUFFER_LENGTH Scale Radix NULLABLE Description DefaultValue SQL_DATA_TYPE SQL_DATETIME_SUB CharOctetLength Position IS_NULLABLE SCOPE_CATALOG SCOPE_SCHEMA SCOPE_TABLE !
SOURCE_DATA_TYPE IS_AUTOINCREMENT
+string string string string integer string integer string integer integer integer string string string string integer integer string string string string !
string string
+TABLE_CAT TABLE_SCHEM TABLE_NAME COLUMN_NAME DATA_TYPE TYPE_NAME COLUMN_SIZE BUFFER_LENGTH DECIMAL_DIGITS NUM_PREC_RADIX NULLABLE REMARKS COLUMN_DEF SQL_DATA_TYPE SQL_DATETIME_SUB CHAR_OCTET_LENGTH ORDINAL_POSITION IS_NULLABLE SCOPE_CATALOG SCOPE_SCHEMA SCOPE_TAB!
LE SOURCE_DATA_TYPE IS_AUTOINCREMENT
Row Count : 0
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 QT_Ora9DS java.lang.String TABLE_CAT string SYS Columns 255 255 0 false false false false 0 true true false false
SchemaName 12 QT_Ora9DS java.lang.String TABLE_SCHEM string SYS Columns 255 255 0 false true false true 1 false true true true
TableName 12 QT_Ora9DS java.lang.String TABLE_NAME string SYS Columns 255 255 0 false true false false 0 true true false false
Name 12 QT_Ora9DS java.lang.String COLUMN_NAME string SYS Columns 255 255 0 false false false false 0 true true false false
-DATA_TYPE 5 QT_Ora9DS java.lang.Short DATA_TYPE short <null> <null> 6 5 0 false false false true 1 false true true true
+Length 4 QT_Ora9DS java.lang.Integer DATA_TYPE integer SYS Columns 11 10 0 false false false false 0 true true false false
DataType 12 QT_Ora9DS java.lang.String TYPE_NAME string SYS Columns 100 100 0 false true false false 0 true true true false
-COLUMN_SIZE 4 QT_Ora9DS java.lang.Integer COLUMN_SIZE integer <null> <null> 11 10 0 false false false true 1 false true true true
+Precision 4 QT_Ora9DS java.lang.Integer COLUMN_SIZE integer SYS Columns 11 10 0 false false false false 0 true true false false
BUFFER_LENGTH 12 QT_Ora9DS java.lang.String BUFFER_LENGTH string <null> <null> 4000 4000 0 false false false true 1 false true true true
Scale 4 QT_Ora9DS java.lang.Integer DECIMAL_DIGITS integer SYS Columns 11 10 0 false false false false 0 true true false false
Radix 4 QT_Ora9DS java.lang.Integer NUM_PREC_RADIX integer SYS Columns 11 10 0 false false false false 0 true true false false
Modified: trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetIndexInfo.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetIndexInfo.expected 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetIndexInfo.expected 2012-01-23 18:52:20 UTC (rev 3813)
@@ -1,5 +1,5 @@
string string string boolean string string integer short string string integer integer string
-VDBName SchemaName TableName NON_UNIQUE INDEX_QUALIFIER KeyName TYPE ORDINAL_POSITION Name ASC_OR_DESC CARDINALITY PAGES FILTER_CONDITION
+TABLE_CAT TABLE_SCHEM TABLE_NAME NON_UNIQUE INDEX_QUALIFIER INDEX_NAME TYPE ORDINAL_POSITION COLUMN_NAME ASC_OR_DESC CARDINALITY PAGES FILTER_CONDITION
Row Count : 0
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 QT_Ora9DS java.lang.String TABLE_CAT string SYS KeyColumns 255 255 0 false false false false 0 true true false false
@@ -16,7 +16,7 @@
PAGES 4 QT_Ora9DS java.lang.Integer PAGES integer <null> <null> 11 10 0 false false false true 1 false true true true
FILTER_CONDITION 12 QT_Ora9DS java.lang.String FILTER_CONDITION string <null> <null> 4000 4000 0 false false false true 1 false true true true
string string string boolean string string integer short string string integer integer string
-VDBName SchemaName TableName NON_UNIQUE INDEX_QUALIFIER KeyName TYPE ORDINAL_POSITION Name ASC_OR_DESC CARDINALITY PAGES FILTER_CONDITION
+TABLE_CAT TABLE_SCHEM TABLE_NAME NON_UNIQUE INDEX_QUALIFIER INDEX_NAME TYPE ORDINAL_POSITION COLUMN_NAME ASC_OR_DESC CARDINALITY PAGES FILTER_CONDITION
Row Count : 0
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 QT_Ora9DS java.lang.String TABLE_CAT string SYS KeyColumns 255 255 0 false false false false 0 true true false false
@@ -33,7 +33,7 @@
PAGES 4 QT_Ora9DS java.lang.Integer PAGES integer <null> <null> 11 10 0 false false false true 1 false true true true
FILTER_CONDITION 12 QT_Ora9DS java.lang.String FILTER_CONDITION string <null> <null> 4000 4000 0 false false false true 1 false true true true
string string string boolean string string integer short string string integer integer string
-VDBName SchemaName TableName NON_UNIQUE INDEX_QUALIFIER KeyName TYPE ORDINAL_POSITION Name ASC_OR_DESC CARDINALITY PAGES FILTER_CONDITION
+TABLE_CAT TABLE_SCHEM TABLE_NAME NON_UNIQUE INDEX_QUALIFIER INDEX_NAME TYPE ORDINAL_POSITION COLUMN_NAME ASC_OR_DESC CARDINALITY PAGES FILTER_CONDITION
Row Count : 0
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 QT_Ora9DS java.lang.String TABLE_CAT string SYS KeyColumns 255 255 0 false false false false 0 true true false false
Modified: trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetIndexInfoWithEscape.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetIndexInfoWithEscape.expected 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetIndexInfoWithEscape.expected 2012-01-23 18:52:20 UTC (rev 3813)
@@ -1,5 +1,5 @@
string string string boolean string string integer short string string integer integer string
-VDBName SchemaName TableName NON_UNIQUE INDEX_QUALIFIER KeyName TYPE ORDINAL_POSITION Name ASC_OR_DESC CARDINALITY PAGES FILTER_CONDITION
+TABLE_CAT TABLE_SCHEM TABLE_NAME NON_UNIQUE INDEX_QUALIFIER INDEX_NAME TYPE ORDINAL_POSITION COLUMN_NAME ASC_OR_DESC CARDINALITY PAGES FILTER_CONDITION
Row Count : 0
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 QT_Ora9DS java.lang.String TABLE_CAT string SYS KeyColumns 255 255 0 false false false false 0 true true false false
@@ -16,7 +16,7 @@
PAGES 4 QT_Ora9DS java.lang.Integer PAGES integer <null> <null> 11 10 0 false false false true 1 false true true true
FILTER_CONDITION 12 QT_Ora9DS java.lang.String FILTER_CONDITION string <null> <null> 4000 4000 0 false false false true 1 false true true true
string string string boolean string string integer short string string integer integer string
-VDBName SchemaName TableName NON_UNIQUE INDEX_QUALIFIER KeyName TYPE ORDINAL_POSITION Name ASC_OR_DESC CARDINALITY PAGES FILTER_CONDITION
+TABLE_CAT TABLE_SCHEM TABLE_NAME NON_UNIQUE INDEX_QUALIFIER INDEX_NAME TYPE ORDINAL_POSITION COLUMN_NAME ASC_OR_DESC CARDINALITY PAGES FILTER_CONDITION
Row Count : 0
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 QT_Ora9DS java.lang.String TABLE_CAT string SYS KeyColumns 255 255 0 false false false false 0 true true false false
@@ -33,7 +33,7 @@
PAGES 4 QT_Ora9DS java.lang.Integer PAGES integer <null> <null> 11 10 0 false false false true 1 false true true true
FILTER_CONDITION 12 QT_Ora9DS java.lang.String FILTER_CONDITION string <null> <null> 4000 4000 0 false false false true 1 false true true true
string string string boolean string string integer short string string integer integer string
-VDBName SchemaName TableName NON_UNIQUE INDEX_QUALIFIER KeyName TYPE ORDINAL_POSITION Name ASC_OR_DESC CARDINALITY PAGES FILTER_CONDITION
+TABLE_CAT TABLE_SCHEM TABLE_NAME NON_UNIQUE INDEX_QUALIFIER INDEX_NAME TYPE ORDINAL_POSITION COLUMN_NAME ASC_OR_DESC CARDINALITY PAGES FILTER_CONDITION
Row Count : 0
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 QT_Ora9DS java.lang.String TABLE_CAT string SYS KeyColumns 255 255 0 false false false false 0 true true false false
Modified: trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetPrimaryKeys.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetPrimaryKeys.expected 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetPrimaryKeys.expected 2012-01-23 18:52:20 UTC (rev 3813)
@@ -1,5 +1,5 @@
string string string string short string
-VDBName SchemaName TableName Name KEY_SEQ KeyName
+TABLE_CAT TABLE_SCHEM TABLE_NAME COLUMN_NAME KEY_SEQ PK_NAME
QT_Ora9DS BQT1 SmallA IntKey 1 PK_SmallA
Row Count : 1
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
@@ -10,7 +10,7 @@
KEY_SEQ 5 QT_Ora9DS java.lang.Short KEY_SEQ short <null> <null> 6 5 0 false false false true 1 false true true true
KeyName 12 QT_Ora9DS java.lang.String PK_NAME string SYS KeyColumns 255 255 0 false false false false 1 true true false false
string string string string short string
-VDBName SchemaName TableName Name KEY_SEQ KeyName
+TABLE_CAT TABLE_SCHEM TABLE_NAME COLUMN_NAME KEY_SEQ PK_NAME
Row Count : 0
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 QT_Ora9DS java.lang.String TABLE_CAT string SYS KeyColumns 255 255 0 false false false false 0 true true false false
@@ -20,7 +20,7 @@
KEY_SEQ 5 QT_Ora9DS java.lang.Short KEY_SEQ short <null> <null> 6 5 0 false false false true 1 false true true true
KeyName 12 QT_Ora9DS java.lang.String PK_NAME string SYS KeyColumns 255 255 0 false false false false 1 true true false false
string string string string short string
-VDBName SchemaName TableName Name KEY_SEQ KeyName
+TABLE_CAT TABLE_SCHEM TABLE_NAME COLUMN_NAME KEY_SEQ PK_NAME
Row Count : 0
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 QT_Ora9DS java.lang.String TABLE_CAT string SYS KeyColumns 255 255 0 false false false false 0 true true false false
Modified: trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetPrimaryKeysWithEscape.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetPrimaryKeysWithEscape.expected 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetPrimaryKeysWithEscape.expected 2012-01-23 18:52:20 UTC (rev 3813)
@@ -1,5 +1,5 @@
string string string string short string
-VDBName SchemaName TableName Name KEY_SEQ KeyName
+TABLE_CAT TABLE_SCHEM TABLE_NAME COLUMN_NAME KEY_SEQ PK_NAME
QT_Ora9DS BQT1 SmallA IntKey 1 PK_SmallA
Row Count : 1
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
@@ -10,7 +10,7 @@
KEY_SEQ 5 QT_Ora9DS java.lang.Short KEY_SEQ short <null> <null> 6 5 0 false false false true 1 false true true true
KeyName 12 QT_Ora9DS java.lang.String PK_NAME string SYS KeyColumns 255 255 0 false false false false 1 true true false false
string string string string short string
-VDBName SchemaName TableName Name KEY_SEQ KeyName
+TABLE_CAT TABLE_SCHEM TABLE_NAME COLUMN_NAME KEY_SEQ PK_NAME
Row Count : 0
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 QT_Ora9DS java.lang.String TABLE_CAT string SYS KeyColumns 255 255 0 false false false false 0 true true false false
@@ -20,7 +20,7 @@
KEY_SEQ 5 QT_Ora9DS java.lang.Short KEY_SEQ short <null> <null> 6 5 0 false false false true 1 false true true true
KeyName 12 QT_Ora9DS java.lang.String PK_NAME string SYS KeyColumns 255 255 0 false false false false 1 true true false false
string string string string short string
-VDBName SchemaName TableName Name KEY_SEQ KeyName
+TABLE_CAT TABLE_SCHEM TABLE_NAME COLUMN_NAME KEY_SEQ PK_NAME
Row Count : 0
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 QT_Ora9DS java.lang.String TABLE_CAT string SYS KeyColumns 255 255 0 false false false false 0 true true false false
Modified: trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetProcedureColumns.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetProcedureColumns.expected 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetProcedureColumns.expected 2012-01-23 18:52:20 UTC (rev 3813)
@@ -1,73 +1,73 @@
-string string string string short integer string integer integer short integer integer string string string string string integer string string
-VDBName SchemaName ProcedureName Name COLUMN_TYPE DATA_TYPE DataType PRECISION LENGTH SCALE Radix NULLABLE Description COLUMN_DEF SQL_DATA_TYPE SQL_DATETIME_SUB CHAR_OCTET_LENGTH Position IS_NULLABLE ProcedureName
-QT_Ora9DS SP sp_all_smalla_rows IntKey 3 4 integer 22 10 0 10 0 <null> <null> <null> <null> <null> 1 NO sp_all_smalla_rows
-QT_Ora9DS SP sp_all_smalla_rows StringKey 3 12 string 4000 10 0 10 0 <null> <null> <null> <null> <null> 2 NO sp_all_smalla_rows
-QT_Ora9DS SP sp_all_smalla_rows IntNum 3 4 integer 22 10 0 10 1 <null> <null> <null> <null> <null> 3 YES sp_all_smalla_rows
-QT_Ora9DS SP sp_all_smalla_rows StringNum 3 12 string 4000 10 0 10 1 <null> <null> <null> <null> <null> 4 YES sp_all_smalla_rows
-QT_Ora9DS SP sp_all_smalla_rows FloatNum 3 7 float 20 126 0 10 1 <null> <null> <null> <null> <null> 5 YES sp_all_smalla_rows
-QT_Ora9DS SP sp_all_smalla_rows LongNum 3 -5 long 28 19 0 10 1 <null> <null> <null> <null> <null> 6 YES sp_all_smalla_rows
-QT_Ora9DS SP sp_all_smalla_rows DoubleNum 3 8 double 20 28 0 10 1 <null> <null> <null> <null> <null> 7 YES sp_all_smalla_rows
-QT_Ora9DS SP sp_all_smalla_rows ByteNum 3 -6 byte 8 3 0 10 1 <null> <null> <null> <null> <null> 8 YES sp_all_smalla_rows
-QT_Ora9DS SP sp_all_smalla_rows DateValue 3 91 date 10 7 0 10 1 <null> <null> <null> <null> <null> 9 YES sp_all_smalla_rows
-QT_Ora9DS SP sp_all_smalla_rows TimeValue 3 92 time 8 7 0 10 1 <null> <null> <null> <null> <null> 10 YES sp_all_smalla_rows
-QT_Ora9DS SP sp_all_smalla_rows TimestampValue 3 93 timestamp 29 7 0 10 1 <null> <null> <null> <null> <null> 11 YES sp_all_smalla_rows
-QT_Ora9DS SP sp_all_smalla_rows BooleanValue 3 -7 boolean 1 1 0 10 1 <null> <null> <null> <null> <null> 12 YES sp_all_smalla_rows
-QT_Ora9DS SP sp_all_smalla_rows CharValue 3 1 char 1 1 0 10 1 <null> <null> <null> <null> <null> 13 YES sp_all_smalla_rows
-QT_Ora9DS SP sp_all_smalla_rows ShortValue 3 5 short 8 5 0 10 1 <null> <null> <null> <null> <null> 14 YES sp_all_smalla_rows
-QT_Ora9DS SP sp_all_smalla_rows BigIntegerValue 3 2 biginteger 19 28 0 10 1 <null> <null> <null> <null> <null> 15 YES sp_all_smalla_rows
-QT_Ora9DS SP sp_all_smalla_rows BigDecimalValue 3 2 bigdecimal 20 126 0 10 1 <null> <null> <null> <null> <null> 16 YES sp_all_smalla_rows
-QT_Ora9DS SP sp_all_smalla_rows ObjectValue 3 2000 object 2147483647 2048 0 10 1 <null> <null> <null> <null> <null> 17 YES sp_all_smalla_rows
-QT_Ora9DS SP sp_count_all_smalla_rows allSmallARows 4 4 integer 10 4 0 10 1 <null> <null> <null> <null> <null> 1 YES sp_count_all_smalla_rows
-QT_Ora9DS SP sp_count_rows_between lwrlimit 1 4 integer 10 4 0 10 1 <null> <null> <null> <null> <null> 1 YES sp_count_rows_between
-QT_Ora9DS SP sp_count_rows_between uprlimit 1 4 integer 10 4 0 10 1 <null> <null> <null> <null> <null> 2 YES sp_count_rows_between
-QT_Ora9DS SP sp_count_rows_between rowsBetween 4 4 integer 10 4 0 10 1 <null> <null> <null> <null> <null> 3 YES sp_count_rows_between
-QT_Ora9DS SP sp_rows_between lwrlimit 1 4 integer 10 4 0 10 1 <null> <null> <null> <null> <null> 1 YES sp_rows_between
-QT_Ora9DS SP sp_rows_between uprlimit 1 4 integer 10 4 0 10 1 <null> <null> <null> <null> <null> 2 YES sp_rows_between
-QT_Ora9DS SP sp_rows_between tablename 1 12 string 8 8 0 0 1 <null> <null> <null> <null> <null> 3 YES sp_rows_between
-QT_Ora9DS SP sp_rows_between IntKey 3 4 integer 22 10 0 10 0 <null> <null> <null> <null> <null> 1 NO sp_rows_between
-QT_Ora9DS SP sp_rows_between StringKey 3 12 string 4000 10 0 10 0 <null> <null> <null> <null> <null> 2 NO sp_rows_between
-QT_Ora9DS SP sp_rows_between IntNum 3 4 integer 22 10 0 10 1 <null> <null> <null> <null> <null> 3 YES sp_rows_between
-QT_Ora9DS SP sp_rows_between StringNum 3 12 string 4000 10 0 10 1 <null> <null> <null> <null> <null> 4 YES sp_rows_between
-QT_Ora9DS SP sp_rows_between FloatNum 3 7 float 20 126 0 10 1 <null> <null> <null> <null> <null> 5 YES sp_rows_between
-QT_Ora9DS SP sp_rows_between LongNum 3 -5 long 28 19 0 10 1 <null> <null> <null> <null> <null> 6 YES sp_rows_between
-QT_Ora9DS SP sp_rows_between DoubleNum 3 8 double 20 28 0 10 1 <null> <null> <null> <null> <null> 7 YES sp_rows_between
-QT_Ora9DS SP sp_rows_between ByteNum 3 -6 byte 8 3 0 10 1 <null> <null> <null> <null> <null> 8 YES sp_rows_between
-QT_Ora9DS SP sp_rows_between DateValue 3 91 date 10 7 0 10 1 <null> <null> <null> <null> <null> 9 YES sp_rows_between
-QT_Ora9DS SP sp_rows_between TimeValue 3 92 time 8 7 0 10 1 <null> <null> <null> <null> <null> 10 YES sp_rows_between
-QT_Ora9DS SP sp_rows_between TimestampValue 3 93 timestamp 29 7 0 10 1 <null> <null> <null> <null> <null> 11 YES sp_rows_between
-QT_Ora9DS SP sp_rows_between BooleanValue 3 -7 boolean 1 1 0 10 1 <null> <null> <null> <null> <null> 12 YES sp_rows_between
-QT_Ora9DS SP sp_rows_between CharValue 3 1 char 1 1 0 10 1 <null> <null> <null> <null> <null> 13 YES sp_rows_between
-QT_Ora9DS SP sp_rows_between ShortValue 3 5 short 8 5 0 10 1 <null> <null> <null> <null> <null> 14 YES sp_rows_between
-QT_Ora9DS SP sp_rows_between BigIntegerValue 3 2 biginteger 19 28 0 10 1 <null> <null> <null> <null> <null> 15 YES sp_rows_between
-QT_Ora9DS SP sp_rows_between BigDecimalValue 3 2 bigdecimal 20 126 0 10 1 <null> <null> <null> <null> <null> 16 YES sp_rows_between
-QT_Ora9DS SP sp_rows_between ObjectValue 3 2000 object 2147483647 2048 0 10 1 <null> <null> <null> <null> <null> 17 YES sp_rows_between
-QT_Ora9DS SYS getXMLSchemas document 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 1 NO getXMLSchemas
-QT_Ora9DS SYS getXMLSchemas schema 3 2009 xml 2147483647 2147483647 0 10 1 <null> <null> <null> <null> <null> 1 YES getXMLSchemas
-QT_Ora9DS SYSADMIN isLoggable level 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 2 NO isLoggable
-QT_Ora9DS SYSADMIN isLoggable context 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 3 NO isLoggable
-QT_Ora9DS SYSADMIN isLoggable loggable 5 -7 boolean 1 1 0 10 0 <null> <null> <null> <null> <null> 1 NO isLoggable
-QT_Ora9DS SYSADMIN logMsg level 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 2 NO logMsg
-QT_Ora9DS SYSADMIN logMsg context 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 3 NO logMsg
-QT_Ora9DS SYSADMIN logMsg msg 1 2000 object 2147483647 2147483647 0 10 0 <null> <null> <null> <null> <null> 4 NO logMsg
-QT_Ora9DS SYSADMIN logMsg logged 5 -7 boolean 1 1 0 10 0 <null> <null> <null> <null> <null> 1 NO logMsg
-QT_Ora9DS SYSADMIN refreshMatView ViewName 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 1 NO refreshMatView
-QT_Ora9DS SYSADMIN refreshMatView Invalidate 1 -7 boolean 1 1 0 10 0 <null> <null> <null> <null> <null> 2 NO refreshMatView
-QT_Ora9DS SYSADMIN refreshMatView RowsUpdated 5 4 integer 10 10 0 10 0 <null> <null> <null> <null> <null> 3 NO refreshMatView
-QT_Ora9DS SYSADMIN refreshMatViewRow ViewName 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 1 NO refreshMatViewRow
-QT_Ora9DS SYSADMIN refreshMatViewRow Key 1 2000 object 2147483647 2147483647 0 10 0 <null> <null> <null> <null> <null> 2 NO refreshMatViewRow
-QT_Ora9DS SYSADMIN refreshMatViewRow RowsUpdated 5 4 integer 10 10 0 10 0 <null> <null> <null> <null> <null> 3 NO refreshMatViewRow
-QT_Ora9DS SYSADMIN setColumnStats tableName 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 1 NO setColumnStats
-QT_Ora9DS SYSADMIN setColumnStats columnName 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 2 NO setColumnStats
-QT_Ora9DS SYSADMIN setColumnStats distinctCount 1 4 integer 10 10 0 10 1 <null> <null> <null> <null> <null> 3 YES setColumnStats
-QT_Ora9DS SYSADMIN setColumnStats nullCount 1 4 integer 10 10 0 10 1 <null> <null> <null> <null> <null> 4 YES setColumnStats
-QT_Ora9DS SYSADMIN setColumnStats max 1 12 string 4000 4000 0 10 1 <null> <null> <null> <null> <null> 5 YES setColumnStats
-QT_Ora9DS SYSADMIN setColumnStats min 1 12 string 4000 4000 0 10 1 <null> <null> <null> <null> <null> 6 YES setColumnStats
-QT_Ora9DS SYSADMIN setProperty UID 1 12 string 4000 50 0 10 0 <null> <null> <null> <null> <null> 2 NO setProperty
-QT_Ora9DS SYSADMIN setProperty Name 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 3 NO setProperty
-QT_Ora9DS SYSADMIN setProperty Value 1 2005 clob 2147483647 2097152 0 10 1 <null> <null> <null> <null> <null> 4 YES setProperty
-QT_Ora9DS SYSADMIN setProperty OldValue 5 2005 clob 2147483647 2097152 0 10 0 <null> <null> <null> <null> <null> 1 NO setProperty
-QT_Ora9DS SYSADMIN setTableStats tableName 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 1 NO setTableStats
-QT_Ora9DS SYSADMIN setTableStats cardinality 1 4 integer 10 10 0 10 0 <null> <null> <null> <null> <null> 2 NO setTableStats
+string string string string short integer string integer integer short integer integer string string string string string integer string string
+PROCEDURE_CAT PROCEDURE_SCHEM PROCEDURE_NAME COLUMN_NAME COLUMN_TYPE DATA_TYPE TYPE_NAME PRECISION LENGTH SCALE RADIX NULLABLE REMARKS COLUMN_DEF SQL_DATA_TYPE SQL_DATETIME_SUB CHAR_OCTET_LENGTH ORDINAL_POSITION IS_NULLABLE SPECIFIC_NAME
+QT_Ora9DS SP sp_all_smalla_rows IntKey 3 4 integer 22 10 0 10 0 <null> <null> <null> <null> <null> 1 NO sp_all_smalla_rows
+QT_Ora9DS SP sp_all_smalla_rows StringKey 3 12 string 4000 10 0 10 0 <null> <null> <null> <null> <null> 2 NO sp_all_smalla_rows
+QT_Ora9DS SP sp_all_smalla_rows IntNum 3 4 integer 22 10 0 10 1 <null> <null> <null> <null> <null> 3 YES sp_all_smalla_rows
+QT_Ora9DS SP sp_all_smalla_rows StringNum 3 12 string 4000 10 0 10 1 <null> <null> <null> <null> <null> 4 YES sp_all_smalla_rows
+QT_Ora9DS SP sp_all_smalla_rows FloatNum 3 7 float 20 126 0 10 1 <null> <null> <null> <null> <null> 5 YES sp_all_smalla_rows
+QT_Ora9DS SP sp_all_smalla_rows LongNum 3 -5 long 28 19 0 10 1 <null> <null> <null> <null> <null> 6 YES sp_all_smalla_rows
+QT_Ora9DS SP sp_all_smalla_rows DoubleNum 3 8 double 20 28 0 10 1 <null> <null> <null> <null> <null> 7 YES sp_all_smalla_rows
+QT_Ora9DS SP sp_all_smalla_rows ByteNum 3 -6 byte 8 3 0 10 1 <null> <null> <null> <null> <null> 8 YES sp_all_smalla_rows
+QT_Ora9DS SP sp_all_smalla_rows DateValue 3 91 date 10 7 0 10 1 <null> <null> <null> <null> <null> 9 YES sp_all_smalla_rows
+QT_Ora9DS SP sp_all_smalla_rows TimeValue 3 92 time 8 7 0 10 1 <null> <null> <null> <null> <null> 10 YES sp_all_smalla_rows
+QT_Ora9DS SP sp_all_smalla_rows TimestampValue 3 93 timestamp 29 7 0 10 1 <null> <null> <null> <null> <null> 11 YES sp_all_smalla_rows
+QT_Ora9DS SP sp_all_smalla_rows BooleanValue 3 -7 boolean 1 1 0 10 1 <null> <null> <null> <null> <null> 12 YES sp_all_smalla_rows
+QT_Ora9DS SP sp_all_smalla_rows CharValue 3 1 char 1 1 0 10 1 <null> <null> <null> <null> <null> 13 YES sp_all_smalla_rows
+QT_Ora9DS SP sp_all_smalla_rows ShortValue 3 5 short 8 5 0 10 1 <null> <null> <null> <null> <null> 14 YES sp_all_smalla_rows
+QT_Ora9DS SP sp_all_smalla_rows BigIntegerValue 3 2 biginteger 19 28 0 10 1 <null> <null> <null> <null> <null> 15 YES sp_all_smalla_rows
+QT_Ora9DS SP sp_all_smalla_rows BigDecimalValue 3 2 bigdecimal 20 126 0 10 1 <null> <null> <null> <null> <null> 16 YES sp_all_smalla_rows
+QT_Ora9DS SP sp_all_smalla_rows ObjectValue 3 2000 object 2147483647 2048 0 10 1 <null> <null> <null> <null> <null> 17 YES sp_all_smalla_rows
+QT_Ora9DS SP sp_count_all_smalla_rows allSmallARows 4 4 integer 10 4 0 10 1 <null> <null> <null> <null> <null> 1 YES sp_count_all_smalla_rows
+QT_Ora9DS SP sp_count_rows_between lwrlimit 1 4 integer 10 4 0 10 1 <null> <null> <null> <null> <null> 1 YES sp_count_rows_between
+QT_Ora9DS SP sp_count_rows_between uprlimit 1 4 integer 10 4 0 10 1 <null> <null> <null> <null> <null> 2 YES sp_count_rows_between
+QT_Ora9DS SP sp_count_rows_between rowsBetween 4 4 integer 10 4 0 10 1 <null> <null> <null> <null> <null> 3 YES sp_count_rows_between
+QT_Ora9DS SP sp_rows_between lwrlimit 1 4 integer 10 4 0 10 1 <null> <null> <null> <null> <null> 1 YES sp_rows_between
+QT_Ora9DS SP sp_rows_between uprlimit 1 4 integer 10 4 0 10 1 <null> <null> <null> <null> <null> 2 YES sp_rows_between
+QT_Ora9DS SP sp_rows_between tablename 1 12 string 8 8 0 0 1 <null> <null> <null> <null> <null> 3 YES sp_rows_between
+QT_Ora9DS SP sp_rows_between IntKey 3 4 integer 22 10 0 10 0 <null> <null> <null> <null> <null> 1 NO sp_rows_between
+QT_Ora9DS SP sp_rows_between StringKey 3 12 string 4000 10 0 10 0 <null> <null> <null> <null> <null> 2 NO sp_rows_between
+QT_Ora9DS SP sp_rows_between IntNum 3 4 integer 22 10 0 10 1 <null> <null> <null> <null> <null> 3 YES sp_rows_between
+QT_Ora9DS SP sp_rows_between StringNum 3 12 string 4000 10 0 10 1 <null> <null> <null> <null> <null> 4 YES sp_rows_between
+QT_Ora9DS SP sp_rows_between FloatNum 3 7 float 20 126 0 10 1 <null> <null> <null> <null> <null> 5 YES sp_rows_between
+QT_Ora9DS SP sp_rows_between LongNum 3 -5 long 28 19 0 10 1 <null> <null> <null> <null> <null> 6 YES sp_rows_between
+QT_Ora9DS SP sp_rows_between DoubleNum 3 8 double 20 28 0 10 1 <null> <null> <null> <null> <null> 7 YES sp_rows_between
+QT_Ora9DS SP sp_rows_between ByteNum 3 -6 byte 8 3 0 10 1 <null> <null> <null> <null> <null> 8 YES sp_rows_between
+QT_Ora9DS SP sp_rows_between DateValue 3 91 date 10 7 0 10 1 <null> <null> <null> <null> <null> 9 YES sp_rows_between
+QT_Ora9DS SP sp_rows_between TimeValue 3 92 time 8 7 0 10 1 <null> <null> <null> <null> <null> 10 YES sp_rows_between
+QT_Ora9DS SP sp_rows_between TimestampValue 3 93 timestamp 29 7 0 10 1 <null> <null> <null> <null> <null> 11 YES sp_rows_between
+QT_Ora9DS SP sp_rows_between BooleanValue 3 -7 boolean 1 1 0 10 1 <null> <null> <null> <null> <null> 12 YES sp_rows_between
+QT_Ora9DS SP sp_rows_between CharValue 3 1 char 1 1 0 10 1 <null> <null> <null> <null> <null> 13 YES sp_rows_between
+QT_Ora9DS SP sp_rows_between ShortValue 3 5 short 8 5 0 10 1 <null> <null> <null> <null> <null> 14 YES sp_rows_between
+QT_Ora9DS SP sp_rows_between BigIntegerValue 3 2 biginteger 19 28 0 10 1 <null> <null> <null> <null> <null> 15 YES sp_rows_between
+QT_Ora9DS SP sp_rows_between BigDecimalValue 3 2 bigdecimal 20 126 0 10 1 <null> <null> <null> <null> <null> 16 YES sp_rows_between
+QT_Ora9DS SP sp_rows_between ObjectValue 3 2000 object 2147483647 2048 0 10 1 <null> <null> <null> <null> <null> 17 YES sp_rows_between
+QT_Ora9DS SYS getXMLSchemas document 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 1 NO getXMLSchemas
+QT_Ora9DS SYS getXMLSchemas schema 3 2009 xml 2147483647 2147483647 0 10 1 <null> <null> <null> <null> <null> 1 YES getXMLSchemas
+QT_Ora9DS SYSADMIN isLoggable level 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 2 NO isLoggable
+QT_Ora9DS SYSADMIN isLoggable context 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 3 NO isLoggable
+QT_Ora9DS SYSADMIN isLoggable loggable 5 -7 boolean 1 1 0 10 0 <null> <null> <null> <null> <null> 1 NO isLoggable
+QT_Ora9DS SYSADMIN logMsg level 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 2 NO logMsg
+QT_Ora9DS SYSADMIN logMsg context 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 3 NO logMsg
+QT_Ora9DS SYSADMIN logMsg msg 1 2000 object 2147483647 2147483647 0 10 0 <null> <null> <null> <null> <null> 4 NO logMsg
+QT_Ora9DS SYSADMIN logMsg logged 5 -7 boolean 1 1 0 10 0 <null> <null> <null> <null> <null> 1 NO logMsg
+QT_Ora9DS SYSADMIN refreshMatView ViewName 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 1 NO refreshMatView
+QT_Ora9DS SYSADMIN refreshMatView Invalidate 1 -7 boolean 1 1 0 10 0 <null> <null> <null> <null> <null> 2 NO refreshMatView
+QT_Ora9DS SYSADMIN refreshMatView RowsUpdated 5 4 integer 10 10 0 10 0 <null> <null> <null> <null> <null> 3 NO refreshMatView
+QT_Ora9DS SYSADMIN refreshMatViewRow ViewName 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 1 NO refreshMatViewRow
+QT_Ora9DS SYSADMIN refreshMatViewRow Key 1 2000 object 2147483647 2147483647 0 10 0 <null> <null> <null> <null> <null> 2 NO refreshMatViewRow
+QT_Ora9DS SYSADMIN refreshMatViewRow RowsUpdated 5 4 integer 10 10 0 10 0 <null> <null> <null> <null> <null> 3 NO refreshMatViewRow
+QT_Ora9DS SYSADMIN setColumnStats tableName 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 1 NO setColumnStats
+QT_Ora9DS SYSADMIN setColumnStats columnName 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 2 NO setColumnStats
+QT_Ora9DS SYSADMIN setColumnStats distinctCount 1 4 integer 10 10 0 10 1 <null> <null> <null> <null> <null> 3 YES setColumnStats
+QT_Ora9DS SYSADMIN setColumnStats nullCount 1 4 integer 10 10 0 10 1 <null> <null> <null> <null> <null> 4 YES setColumnStats
+QT_Ora9DS SYSADMIN setColumnStats max 1 12 string 4000 4000 0 10 1 <null> <null> <null> <null> <null> 5 YES setColumnStats
+QT_Ora9DS SYSADMIN setColumnStats min 1 12 string 4000 4000 0 10 1 <null> <null> <null> <null> <null> 6 YES setColumnStats
+QT_Ora9DS SYSADMIN setProperty UID 1 12 string 4000 50 0 10 0 <null> <null> <null> <null> <null> 2 NO setProperty
+QT_Ora9DS SYSADMIN setProperty Name 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 3 NO setProperty
+QT_Ora9DS SYSADMIN setProperty Value 1 2005 clob 2147483647 2097152 0 10 1 <null> <null> <null> <null> <null> 4 YES setProperty
+QT_Ora9DS SYSADMIN setProperty OldValue 5 2005 clob 2147483647 2097152 0 10 0 <null> <null> <null> <null> <null> 1 NO setProperty
+QT_Ora9DS SYSADMIN setTableStats tableName 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 1 NO setTableStats
+QT_Ora9DS SYSADMIN setTableStats cardinality 1 4 integer 10 10 0 10 0 <null> <null> <null> <null> <null> 2 NO setTableStats
Row Count : 68
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 QT_Ora9DS java.lang.String PROCEDURE_CAT string SYS ProcedureParams 255 255 0 false false false false 0 true true false false
@@ -77,8 +77,8 @@
COLUMN_TYPE 5 QT_Ora9DS java.lang.Short COLUMN_TYPE short <null> <null> 6 5 0 false false false true 1 false true true true
DATA_TYPE 4 QT_Ora9DS java.lang.Integer DATA_TYPE integer <null> <null> 11 10 0 false false false true 1 false true true true
DataType 12 QT_Ora9DS java.lang.String TYPE_NAME string SYS ProcedureParams 25 25 0 false true false false 0 true true true false
-PRECISION 4 QT_Ora9DS java.lang.Integer PRECISION integer <null> <null> 11 10 0 false false false true 1 false true true true
-LENGTH 4 QT_Ora9DS java.lang.Integer LENGTH integer <null> <null> 11 10 0 false false false true 1 false true true true
+Precision 4 QT_Ora9DS java.lang.Integer PRECISION integer SYS ProcedureParams 11 10 0 false false false false 0 true true false false
+TypeLength 4 QT_Ora9DS java.lang.Integer LENGTH integer SYS ProcedureParams 11 10 0 false false false false 0 true true false false
SCALE 5 QT_Ora9DS java.lang.Short SCALE short <null> <null> 6 5 0 false false false true 1 false true true true
Radix 4 QT_Ora9DS java.lang.Integer RADIX integer SYS ProcedureParams 11 10 0 false false false false 0 true true false false
NULLABLE 4 QT_Ora9DS java.lang.Integer NULLABLE integer <null> <null> 11 10 0 false false false true 1 false true true true
@@ -90,8 +90,8 @@
Position 4 QT_Ora9DS java.lang.Integer ORDINAL_POSITION integer SYS ProcedureParams 11 10 0 false false false false 0 true true false false
IS_NULLABLE 12 QT_Ora9DS java.lang.String IS_NULLABLE string <null> <null> 4000 4000 0 false false false true 1 false true true true
ProcedureName 12 QT_Ora9DS java.lang.String SPECIFIC_NAME string SYS ProcedureParams 255 255 0 false true false false 0 true true false false
-string string string string short integer string integer integer short integer integer string string string string string integer string string
-VDBName SchemaName ProcedureName Name COLUMN_TYPE DATA_TYPE DataType PRECISION LENGTH SCALE Radix NULLABLE Description COLUMN_DEF SQL_DATA_TYPE SQL_DATETIME_SUB CHAR_OCTET_LENGTH Position IS_NULLABLE ProcedureName
+string string string string short integer string integer integer short integer integer string string string string string integer string string
+PROCEDURE_CAT PROCEDURE_SCHEM PROCEDURE_NAME COLUMN_NAME COLUMN_TYPE DATA_TYPE TYPE_NAME PRECISION LENGTH SCALE RADIX NULLABLE REMARKS COLUMN_DEF SQL_DATA_TYPE SQL_DATETIME_SUB CHAR_OCTET_LENGTH ORDINAL_POSITION IS_NULLABLE SPECIFIC_NAME
Row Count : 0
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 QT_Ora9DS java.lang.String PROCEDURE_CAT string SYS ProcedureParams 255 255 0 false false false false 0 true true false false
@@ -101,8 +101,8 @@
COLUMN_TYPE 5 QT_Ora9DS java.lang.Short COLUMN_TYPE short <null> <null> 6 5 0 false false false true 1 false true true true
DATA_TYPE 4 QT_Ora9DS java.lang.Integer DATA_TYPE integer <null> <null> 11 10 0 false false false true 1 false true true true
DataType 12 QT_Ora9DS java.lang.String TYPE_NAME string SYS ProcedureParams 25 25 0 false true false false 0 true true true false
-PRECISION 4 QT_Ora9DS java.lang.Integer PRECISION integer <null> <null> 11 10 0 false false false true 1 false true true true
-LENGTH 4 QT_Ora9DS java.lang.Integer LENGTH integer <null> <null> 11 10 0 false false false true 1 false true true true
+Precision 4 QT_Ora9DS java.lang.Integer PRECISION integer SYS ProcedureParams 11 10 0 false false false false 0 true true false false
+TypeLength 4 QT_Ora9DS java.lang.Integer LENGTH integer SYS ProcedureParams 11 10 0 false false false false 0 true true false false
SCALE 5 QT_Ora9DS java.lang.Short SCALE short <null> <null> 6 5 0 false false false true 1 false true true true
Radix 4 QT_Ora9DS java.lang.Integer RADIX integer SYS ProcedureParams 11 10 0 false false false false 0 true true false false
NULLABLE 4 QT_Ora9DS java.lang.Integer NULLABLE integer <null> <null> 11 10 0 false false false true 1 false true true true
@@ -114,8 +114,8 @@
Position 4 QT_Ora9DS java.lang.Integer ORDINAL_POSITION integer SYS ProcedureParams 11 10 0 false false false false 0 true true false false
IS_NULLABLE 12 QT_Ora9DS java.lang.String IS_NULLABLE string <null> <null> 4000 4000 0 false false false true 1 false true true true
ProcedureName 12 QT_Ora9DS java.lang.String SPECIFIC_NAME string SYS ProcedureParams 255 255 0 false true false false 0 true true false false
-string string string string short integer string integer integer short integer integer string string string string string integer string string
-VDBName SchemaName ProcedureName Name COLUMN_TYPE DATA_TYPE DataType PRECISION LENGTH SCALE Radix NULLABLE Description COLUMN_DEF SQL_DATA_TYPE SQL_DATETIME_SUB CHAR_OCTET_LENGTH Position IS_NULLABLE ProcedureName
+string string string string short integer string integer integer short integer integer string string string string string integer string string
+PROCEDURE_CAT PROCEDURE_SCHEM PROCEDURE_NAME COLUMN_NAME COLUMN_TYPE DATA_TYPE TYPE_NAME PRECISION LENGTH SCALE RADIX NULLABLE REMARKS COLUMN_DEF SQL_DATA_TYPE SQL_DATETIME_SUB CHAR_OCTET_LENGTH ORDINAL_POSITION IS_NULLABLE SPECIFIC_NAME
Row Count : 0
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 QT_Ora9DS java.lang.String PROCEDURE_CAT string SYS ProcedureParams 255 255 0 false false false false 0 true true false false
@@ -125,8 +125,8 @@
COLUMN_TYPE 5 QT_Ora9DS java.lang.Short COLUMN_TYPE short <null> <null> 6 5 0 false false false true 1 false true true true
DATA_TYPE 4 QT_Ora9DS java.lang.Integer DATA_TYPE integer <null> <null> 11 10 0 false false false true 1 false true true true
DataType 12 QT_Ora9DS java.lang.String TYPE_NAME string SYS ProcedureParams 25 25 0 false true false false 0 true true true false
-PRECISION 4 QT_Ora9DS java.lang.Integer PRECISION integer <null> <null> 11 10 0 false false false true 1 false true true true
-LENGTH 4 QT_Ora9DS java.lang.Integer LENGTH integer <null> <null> 11 10 0 false false false true 1 false true true true
+Precision 4 QT_Ora9DS java.lang.Integer PRECISION integer SYS ProcedureParams 11 10 0 false false false false 0 true true false false
+TypeLength 4 QT_Ora9DS java.lang.Integer LENGTH integer SYS ProcedureParams 11 10 0 false false false false 0 true true false false
SCALE 5 QT_Ora9DS java.lang.Short SCALE short <null> <null> 6 5 0 false false false true 1 false true true true
Radix 4 QT_Ora9DS java.lang.Integer RADIX integer SYS ProcedureParams 11 10 0 false false false false 0 true true false false
NULLABLE 4 QT_Ora9DS java.lang.Integer NULLABLE integer <null> <null> 11 10 0 false false false true 1 false true true true
Modified: trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetProcedures.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetProcedures.expected 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetProcedures.expected 2012-01-23 18:52:20 UTC (rev 3813)
@@ -1,5 +1,5 @@
string string string string string string string short string
-VDBName SchemaName Name RESERVED_1 RESERVED_2 RESERVED_3 Description PROCEDURE_TYPE Name
+PROCEDURE_CAT PROCEDURE_SCHEM PROCEDURE_NAME RESERVED_1 RESERVED_2 RESERVED_3 REMARKS PROCEDURE_TYPE SPECIFIC_NAME
QT_Ora9DS SP sp_all_smalla_rows <null> <null> <null> <null> 2 sp_all_smalla_rows
QT_Ora9DS SP sp_count_all_smalla_rows <null> <null> <null> <null> 1 sp_count_all_smalla_rows
QT_Ora9DS SP sp_count_rows_between <null> <null> <null> <null> 1 sp_count_rows_between
@@ -24,7 +24,7 @@
PROCEDURE_TYPE 5 QT_Ora9DS java.lang.Short PROCEDURE_TYPE short <null> <null> 6 5 0 false false false true 1 false true true true
Name 12 QT_Ora9DS java.lang.String SPECIFIC_NAME string SYS Procedures 255 255 0 false true false false 0 true true false false
string string string string string string string short string
-VDBName SchemaName Name RESERVED_1 RESERVED_2 RESERVED_3 Description PROCEDURE_TYPE Name
+PROCEDURE_CAT PROCEDURE_SCHEM PROCEDURE_NAME RESERVED_1 RESERVED_2 RESERVED_3 REMARKS PROCEDURE_TYPE SPECIFIC_NAME
Row Count : 0
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 QT_Ora9DS java.lang.String PROCEDURE_CAT string SYS Procedures 255 255 0 false false false false 0 true true false false
@@ -37,7 +37,7 @@
PROCEDURE_TYPE 5 QT_Ora9DS java.lang.Short PROCEDURE_TYPE short <null> <null> 6 5 0 false false false true 1 false true true true
Name 12 QT_Ora9DS java.lang.String SPECIFIC_NAME string SYS Procedures 255 255 0 false true false false 0 true true false false
string string string string string string string short string
-VDBName SchemaName Name RESERVED_1 RESERVED_2 RESERVED_3 Description PROCEDURE_TYPE Name
+PROCEDURE_CAT PROCEDURE_SCHEM PROCEDURE_NAME RESERVED_1 RESERVED_2 RESERVED_3 REMARKS PROCEDURE_TYPE SPECIFIC_NAME
Row Count : 0
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 QT_Ora9DS java.lang.String PROCEDURE_CAT string SYS Procedures 255 255 0 false false false false 0 true true false false
Modified: trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetProceduresWithEscape.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetProceduresWithEscape.expected 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetProceduresWithEscape.expected 2012-01-23 18:52:20 UTC (rev 3813)
@@ -1,5 +1,5 @@
string string string string string string string short string
-VDBName SchemaName Name RESERVED_1 RESERVED_2 RESERVED_3 Description PROCEDURE_TYPE Name
+PROCEDURE_CAT PROCEDURE_SCHEM PROCEDURE_NAME RESERVED_1 RESERVED_2 RESERVED_3 REMARKS PROCEDURE_TYPE SPECIFIC_NAME
QT_Ora9DS SP sp_all_smalla_rows <null> <null> <null> <null> 2 sp_all_smalla_rows
QT_Ora9DS SP sp_count_all_smalla_rows <null> <null> <null> <null> 1 sp_count_all_smalla_rows
QT_Ora9DS SP sp_count_rows_between <null> <null> <null> <null> 1 sp_count_rows_between
@@ -24,7 +24,7 @@
PROCEDURE_TYPE 5 QT_Ora9DS java.lang.Short PROCEDURE_TYPE short <null> <null> 6 5 0 false false false true 1 false true true true
Name 12 QT_Ora9DS java.lang.String SPECIFIC_NAME string SYS Procedures 255 255 0 false true false false 0 true true false false
string string string string string string string short string
-VDBName SchemaName Name RESERVED_1 RESERVED_2 RESERVED_3 Description PROCEDURE_TYPE Name
+PROCEDURE_CAT PROCEDURE_SCHEM PROCEDURE_NAME RESERVED_1 RESERVED_2 RESERVED_3 REMARKS PROCEDURE_TYPE SPECIFIC_NAME
Row Count : 0
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 QT_Ora9DS java.lang.String PROCEDURE_CAT string SYS Procedures 255 255 0 false false false false 0 true true false false
@@ -37,7 +37,7 @@
PROCEDURE_TYPE 5 QT_Ora9DS java.lang.Short PROCEDURE_TYPE short <null> <null> 6 5 0 false false false true 1 false true true true
Name 12 QT_Ora9DS java.lang.String SPECIFIC_NAME string SYS Procedures 255 255 0 false true false false 0 true true false false
string string string string string string string short string
-VDBName SchemaName Name RESERVED_1 RESERVED_2 RESERVED_3 Description PROCEDURE_TYPE Name
+PROCEDURE_CAT PROCEDURE_SCHEM PROCEDURE_NAME RESERVED_1 RESERVED_2 RESERVED_3 REMARKS PROCEDURE_TYPE SPECIFIC_NAME
Row Count : 0
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 QT_Ora9DS java.lang.String PROCEDURE_CAT string SYS Procedures 255 255 0 false false false false 0 true true false false
Modified: trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetSchemas.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetSchemas.expected 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetSchemas.expected 2012-01-23 18:52:20 UTC (rev 3813)
@@ -1,5 +1,5 @@
string string
-Name VDBName
+TABLE_SCHEM TABLE_CATALOG
BQT1 QT_Ora9DS
BQT2 QT_Ora9DS
SP QT_Ora9DS
Modified: trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetTables.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetTables.expected 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetTables.expected 2012-01-23 18:52:20 UTC (rev 3813)
@@ -1,5 +1,5 @@
string string string string string string string string string string boolean
-VDBName SchemaName Name TABLE_TYPE Description TYPE_CAT TYPE_SCHEM TYPE_NAME SELF_REFERENCING_COL_NAME REF_GENERATION IsPhysical
+TABLE_CAT TABLE_SCHEM TABLE_NAME TABLE_TYPE REMARKS TYPE_CAT TYPE_SCHEM TYPE_NAME SELF_REFERENCING_COL_NAME REF_GENERATION ISPHYSICAL
QT_Ora9DS XQTDoc BQTDocTestDocument DOCUMENT <null> <null> <null> <null> <null> <null> false
QT_Ora9DS XQTDoc choiceTestDocument DOCUMENT <null> <null> <null> <null> <null> <null> false
QT_Ora9DS XQTDoc defaultValueTestDocument DOCUMENT <null> <null> <null> <null> <null> <null> false
@@ -150,7 +150,7 @@
REF_GENERATION 12 QT_Ora9DS java.lang.String REF_GENERATION string <null> <null> 4000 4000 0 false false false true 1 false true true true
IsPhysical -7 QT_Ora9DS java.lang.Boolean ISPHYSICAL boolean SYS Tables 5 1 0 false true false false 0 true true false false
string string string string string string string string string string boolean
-VDBName SchemaName Name TABLE_TYPE Description TYPE_CAT TYPE_SCHEM TYPE_NAME SELF_REFERENCING_COL_NAME REF_GENERATION IsPhysical
+TABLE_CAT TABLE_SCHEM TABLE_NAME TABLE_TYPE REMARKS TYPE_CAT TYPE_SCHEM TYPE_NAME SELF_REFERENCING_COL_NAME REF_GENERATION ISPHYSICAL
Row Count : 0
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 QT_Ora9DS java.lang.String TABLE_CAT string SYS Tables 255 255 0 false true false true 1 false true true true
@@ -165,7 +165,7 @@
REF_GENERATION 12 QT_Ora9DS java.lang.String REF_GENERATION string <null> <null> 4000 4000 0 false false false true 1 false true true true
IsPhysical -7 QT_Ora9DS java.lang.Boolean ISPHYSICAL boolean SYS Tables 5 1 0 false true false false 0 true true false false
string string string string string string string string string string boolean
-VDBName SchemaName Name TABLE_TYPE Description TYPE_CAT TYPE_SCHEM TYPE_NAME SELF_REFERENCING_COL_NAME REF_GENERATION IsPhysical
+TABLE_CAT TABLE_SCHEM TABLE_NAME TABLE_TYPE REMARKS TYPE_CAT TYPE_SCHEM TYPE_NAME SELF_REFERENCING_COL_NAME REF_GENERATION ISPHYSICAL
Row Count : 0
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 QT_Ora9DS java.lang.String TABLE_CAT string SYS Tables 255 255 0 false true false true 1 false true true true
Modified: trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetTables_allTables.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetTables_allTables.expected 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetTables_allTables.expected 2012-01-23 18:52:20 UTC (rev 3813)
@@ -1,5 +1,5 @@
string string string string string string string string string string boolean
-VDBName SchemaName Name TABLE_TYPE Description TYPE_CAT TYPE_SCHEM TYPE_NAME SELF_REFERENCING_COL_NAME REF_GENERATION IsPhysical
+TABLE_CAT TABLE_SCHEM TABLE_NAME TABLE_TYPE REMARKS TYPE_CAT TYPE_SCHEM TYPE_NAME SELF_REFERENCING_COL_NAME REF_GENERATION ISPHYSICAL
QT_Ora9DS XQTDoc BQTDocTestDocument DOCUMENT <null> <null> <null> <null> <null> <null> false
QT_Ora9DS XQTDoc choiceTestDocument DOCUMENT <null> <null> <null> <null> <null> <null> false
QT_Ora9DS XQTDoc defaultValueTestDocument DOCUMENT <null> <null> <null> <null> <null> <null> false
Modified: trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetTables_specificTable.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetTables_specificTable.expected 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetTables_specificTable.expected 2012-01-23 18:52:20 UTC (rev 3813)
@@ -1,5 +1,5 @@
string string string string string string string string string string boolean
-VDBName SchemaName Name TABLE_TYPE Description TYPE_CAT TYPE_SCHEM TYPE_NAME SELF_REFERENCING_COL_NAME REF_GENERATION IsPhysical
+TABLE_CAT TABLE_SCHEM TABLE_NAME TABLE_TYPE REMARKS TYPE_CAT TYPE_SCHEM TYPE_NAME SELF_REFERENCING_COL_NAME REF_GENERATION ISPHYSICAL
Row Count : 0
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 QT_Ora9DS java.lang.String TABLE_CAT string SYS Tables 255 255 0 false true false true 1 false true true true
Modified: trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetTables_specificTableMultipleTypes.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetTables_specificTableMultipleTypes.expected 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetTables_specificTableMultipleTypes.expected 2012-01-23 18:52:20 UTC (rev 3813)
@@ -1,5 +1,5 @@
string string string string string string string string string string boolean
-VDBName SchemaName Name TABLE_TYPE Description TYPE_CAT TYPE_SCHEM TYPE_NAME SELF_REFERENCING_COL_NAME REF_GENERATION IsPhysical
+TABLE_CAT TABLE_SCHEM TABLE_NAME TABLE_TYPE REMARKS TYPE_CAT TYPE_SCHEM TYPE_NAME SELF_REFERENCING_COL_NAME REF_GENERATION ISPHYSICAL
QT_Ora9DS BQT1 HugeA TABLE <null> <null> <null> <null> <null> <null> true
QT_Ora9DS BQT1 HugeB TABLE <null> <null> <null> <null> <null> <null> true
QT_Ora9DS BQT1 LargeA TABLE <null> <null> <null> <null> <null> <null> true
Modified: trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetTables_specificTableTypes.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetTables_specificTableTypes.expected 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetTables_specificTableTypes.expected 2012-01-23 18:52:20 UTC (rev 3813)
@@ -1,5 +1,5 @@
string string string string string string string string string string boolean
-VDBName SchemaName Name TABLE_TYPE Description TYPE_CAT TYPE_SCHEM TYPE_NAME SELF_REFERENCING_COL_NAME REF_GENERATION IsPhysical
+TABLE_CAT TABLE_SCHEM TABLE_NAME TABLE_TYPE REMARKS TYPE_CAT TYPE_SCHEM TYPE_NAME SELF_REFERENCING_COL_NAME REF_GENERATION ISPHYSICAL
QT_Ora9DS BQT1 HugeA TABLE <null> <null> <null> <null> <null> <null> true
QT_Ora9DS BQT1 HugeB TABLE <null> <null> <null> <null> <null> <null> true
QT_Ora9DS BQT1 LargeA TABLE <null> <null> <null> <null> <null> <null> true
Modified: trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetTypeInfo_TotalNumber.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetTypeInfo_TotalNumber.expected 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetTypeInfo_TotalNumber.expected 2012-01-23 18:52:20 UTC (rev 3813)
@@ -17,8 +17,9 @@
timestamp 93 29 {ts' } <null> 1 false 3 true true false timestamp 0 255 <null> <null> 0
object 2000 2147483647 <null> <null> <null> 1 false 3 true true false object 0 255 <null> <null> 0
blob 2004 2147483647 <null> <null> <null> 1 false 3 true true false blob 0 255 <null> <null> 0
+varbinary -3 8192 X' ' <null> 1 false 3 true true false varbinary 0 255 <null> <null> 0
clob 2005 2147483647 <null> <null> <null> 1 false 3 true true false clob 0 255 <null> <null> 0
-Row Count : 18
+Row Count : 19
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
TYPE_NAME 12 QT_Ora9DS java.lang.String TYPE_NAME string SYS DataTypes 4000 4000 0 false false false false 0 true true false false
DATA_TYPE 4 QT_Ora9DS java.lang.Integer DATA_TYPE integer SYS DataTypes 11 10 0 false false false true 1 false true true true
Modified: trunk/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testColumns.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testColumns.expected 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testColumns.expected 2012-01-23 18:52:20 UTC (rev 3813)
@@ -1,266 +1,266 @@
-string string string string short string integer string integer integer integer string string string string integer integer string string string string !
string string
-VDBName SchemaName TableName Name DATA_TYPE DataType COLUMN_SIZE BUFFER_LENGTH Scale Radix NULLABLE Description DefaultValue SQL_DATA_TYPE SQL_DATETIME_SUB CharOctetLength Position IS_NULLABLE SCOPE_CATALOG SCOPE_SCHEMA SCOPE_TABLE !
SOURCE_DATA_TYPE IS_AUTOINCREMENT
-PartsSupplier SYS Columns VDBName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Columns SchemaName 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS Columns TableName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 3 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Columns Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 4 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Columns Position 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 5 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Columns NameInSource 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 6 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS Columns DataType 12 string 100 <null> 0 10 0 <null> <null> <null> <null> 100 7 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Columns Scale 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 8 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Columns Length 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 9 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Columns IsLengthFixed -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 10 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Columns SupportsSelect -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 11 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Columns SupportsUpdates -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 12 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Columns IsCaseSensitive -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 13 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Columns IsSigned -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 14 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Columns IsCurrency -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 15 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Columns IsAutoIncremented -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 16 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Columns NullType 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 17 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Columns MinRange 12 string 50 <null> 0 10 1 <null> <null> <null> <null> 50 18 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS Columns MaxRange 12 string 50 <null> 0 10 1 <null> <null> <null> <null> 50 19 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS Columns DistinctCount 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 20 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS Columns NullCount 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 21 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS Columns SearchType 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 22 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Columns Format 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 23 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS Columns DefaultValue 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 24 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS Columns JavaClass 12 string 500 <null> 0 10 0 <null> <null> <null> <null> 500 25 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Columns Precision 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 26 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Columns CharOctetLength 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 27 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS Columns Radix 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 28 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Columns UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 29 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Columns Description 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 30 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS Columns OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 31 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS DataTypes Name 12 string 100 <null> 0 10 0 <null> <null> <null> <null> 100 1 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS DataTypes IsStandard -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 2 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS DataTypes IsPhysical -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 3 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS DataTypes TypeName 12 string 100 <null> 0 10 0 <null> <null> <null> <null> 100 4 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS DataTypes JavaClass 12 string 500 <null> 0 10 0 <null> <null> <null> <null> 500 5 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS DataTypes Scale 4 integer 10 <null> 0 10 1 <null> (0) <null> <null> 10 6 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS DataTypes TypeLength 4 integer 10 <null> 0 10 0 <null> (0) <null> <null> 10 7 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS DataTypes NullType 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 8 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS DataTypes IsSigned -7 boolean 1 <null> 0 10 0 <null> ('0') <null> <null> 1 9 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS DataTypes IsAutoIncremented -7 boolean 1 <null> 0 10 0 <null> ('0') <null> <null> 1 10 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS DataTypes IsCaseSensitive -7 boolean 1 <null> 0 10 0 <null> ('0') <null> <null> 1 11 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS DataTypes Precision 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 12 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS DataTypes Radix 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 13 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS DataTypes SearchType 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 14 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS DataTypes UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 15 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS DataTypes RuntimeType 12 string 64 <null> 0 10 1 <null> <null> <null> <null> 64 16 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS DataTypes BaseType 12 string 64 <null> 0 10 1 <null> <null> <null> <null> 64 17 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS DataTypes Description 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 18 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS DataTypes OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 19 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS KeyColumns VDBName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS KeyColumns SchemaName 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS KeyColumns TableName 12 string 2048 <null> 0 10 0 <null> <null> <null> <null> 2048 3 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS KeyColumns Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 4 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS KeyColumns KeyName 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 5 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS KeyColumns KeyType 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 6 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS KeyColumns RefKeyUID 12 string 50 <null> 0 10 1 <null> <null> <null> <null> 50 7 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS KeyColumns UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 8 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS KeyColumns Position 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 9 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS KeyColumns OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 10 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Keys VDBName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Keys SchemaName 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS Keys TableName 12 string 2048 <null> 0 10 0 <null> <null> <null> <null> 2048 3 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Keys Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 4 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Keys Description 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 5 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS Keys NameInSource 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 6 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS Keys Type 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 7 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Keys IsIndexed -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 8 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Keys RefKeyUID 12 string 50 <null> 0 10 1 <null> <null> <null> <null> 50 9 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS Keys UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 10 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Keys OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 11 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYSADMIN MatViews VDBName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYSADMIN MatViews SchemaName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 2 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYSADMIN MatViews Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 3 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYSADMIN MatViews TargetSchemaName 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 4 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYSADMIN MatViews TargetName 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 4000 5 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYSADMIN MatViews Valid -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYSADMIN MatViews LoadState 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 7 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYSADMIN MatViews Updated 93 timestamp 29 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYSADMIN MatViews Cardinality 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 9 YES <null> <null> <null> !
<null> NO
-PartsSupplier PartsSupplier PARTSSUPPLIER.PARTS PART_ID 12 string 4 <null> 0 10 0 <null> <null> <null> <null> 4 1 NO <null> <null> <null> !
<null> NO
-PartsSupplier PartsSupplier PARTSSUPPLIER.PARTS PART_NAME 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
-PartsSupplier PartsSupplier PARTSSUPPLIER.PARTS PART_COLOR 12 string 30 <null> 0 10 1 <null> <null> <null> <null> 30 3 YES <null> <null> <null> !
<null> NO
-PartsSupplier PartsSupplier PARTSSUPPLIER.PARTS PART_WEIGHT 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 4 YES <null> <null> <null> !
<null> NO
-PartsSupplier PartsSupplier PARTSSUPPLIER.SHIP_VIA SHIPPER_ID 5 short 2 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-PartsSupplier PartsSupplier PARTSSUPPLIER.SHIP_VIA SHIPPER_NAME 12 string 30 <null> 0 10 1 <null> <null> <null> <null> 30 2 YES <null> <null> <null> !
<null> NO
-PartsSupplier PartsSupplier PARTSSUPPLIER.STATUS STATUS_ID 5 short 2 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-PartsSupplier PartsSupplier PARTSSUPPLIER.STATUS STATUS_NAME 12 string 30 <null> 0 10 1 <null> <null> <null> <null> 30 2 YES <null> <null> <null> !
<null> NO
-PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER SUPPLIER_ID 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 1 NO <null> <null> <null> !
<null> NO
-PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER SUPPLIER_NAME 12 string 30 <null> 0 10 1 <null> <null> <null> <null> 30 2 YES <null> <null> <null> !
<null> NO
-PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER SUPPLIER_STATUS 5 short 2 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER SUPPLIER_CITY 12 string 30 <null> 0 10 1 <null> <null> <null> <null> 30 4 YES <null> <null> <null> !
<null> NO
-PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER SUPPLIER_STATE 12 string 2 <null> 0 10 1 <null> <null> <null> <null> 2 5 YES <null> <null> <null> !
<null> NO
-PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS SUPPLIER_ID 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 1 NO <null> <null> <null> !
<null> NO
-PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS PART_ID 12 string 4 <null> 0 10 0 <null> <null> <null> <null> 4 2 NO <null> <null> <null> !
<null> NO
-PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS QUANTITY 5 short 3 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
-PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS SHIPPER_ID 5 short 2 <null> 0 10 1 <null> <null> <null> <null> 0 4 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS ProcedureParams VDBName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS ProcedureParams SchemaName 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS ProcedureParams ProcedureName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 3 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS ProcedureParams Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 4 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS ProcedureParams DataType 12 string 25 <null> 0 10 0 <null> <null> <null> <null> 25 5 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS ProcedureParams Position 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 6 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS ProcedureParams Type 12 string 100 <null> 0 10 0 <null> <null> <null> <null> 100 7 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS ProcedureParams Optional -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 8 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS ProcedureParams Precision 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 9 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS ProcedureParams TypeLength 4 integer 10 <null> 0 10 0 <null> (0) <null> <null> 10 10 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS ProcedureParams Scale 4 integer 10 <null> 0 10 0 <null> (0) <null> <null> 10 11 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS ProcedureParams Radix 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 12 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS ProcedureParams NullType 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 13 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS ProcedureParams UID 12 string 50 <null> 0 10 1 <null> <null> <null> <null> 50 14 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS ProcedureParams Description 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 15 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS ProcedureParams OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 16 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Procedures VDBName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Procedures SchemaName 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS Procedures Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 3 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Procedures NameInSource 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 4 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS Procedures ReturnsResults -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 5 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Procedures UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 6 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Procedures Description 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 7 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS Procedures OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 8 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Properties Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Properties Value 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 2 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Properties UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 3 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Properties OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 4 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Properties ClobValue 2005 clob 2097152 <null> 0 10 1 <null> <null> <null> <null> 2097152 5 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS ReferenceKeyColumns PKTABLE_CAT 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 1 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS ReferenceKeyColumns PKTABLE_SCHEM 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS ReferenceKeyColumns PKTABLE_NAME 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 3 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS ReferenceKeyColumns PKCOLUMN_NAME 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 4 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS ReferenceKeyColumns FKTABLE_CAT 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 5 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS ReferenceKeyColumns FKTABLE_SCHEM 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 6 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS ReferenceKeyColumns FKTABLE_NAME 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 7 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS ReferenceKeyColumns FKCOLUMN_NAME 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 8 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS ReferenceKeyColumns KEY_SEQ 5 short 5 <null> 0 10 1 <null> <null> <null> <null> 5 9 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS ReferenceKeyColumns UPDATE_RULE 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 10 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS ReferenceKeyColumns DELETE_RULE 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 11 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS ReferenceKeyColumns FK_NAME 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 12 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS ReferenceKeyColumns PK_NAME 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 13 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS ReferenceKeyColumns DEFERRABILITY 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 14 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS Schemas VDBName 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 1 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS Schemas Name 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS Schemas IsPhysical -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 3 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Schemas UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 4 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Schemas Description 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 5 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS Schemas PrimaryMetamodelURI 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 6 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Schemas OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 7 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Tables VDBName 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 1 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS Tables SchemaName 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS Tables Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 3 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Tables Type 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 4 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Tables NameInSource 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 5 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS Tables IsPhysical -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 6 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Tables SupportsUpdates -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 7 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Tables UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 8 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Tables Cardinality 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 9 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Tables Description 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 10 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS Tables IsSystem -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 11 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS Tables IsMaterialized -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 0 12 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS Tables OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 13 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYSADMIN VDBResources resourcePath 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 1 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYSADMIN VDBResources contents 2004 blob 2147483647 <null> 0 10 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-PartsSupplier SYS VirtualDatabases Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
-PartsSupplier SYS VirtualDatabases Version 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 2 NO <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog matpg_datatype oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog matpg_datatype typname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog matpg_datatype name 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog matpg_datatype uid 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog matpg_datatype typlen 5 short 5 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog matpg_relatt attrelid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog matpg_relatt attnum 5 short 5 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog matpg_relatt attname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog matpg_relatt relname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog matpg_relatt nspname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog matpg_relatt autoinc -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 6 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog matpg_relatt typoid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 7 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_am oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_am amname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_attrdef adrelid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_attrdef adnum 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_attrdef adbin 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_attrdef adsrc 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_attribute oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_attribute attrelid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_attribute attname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_attribute atttypid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_attribute attlen 5 short 5 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_attribute attnum 5 short 5 <null> 0 0 2 <null> <null> <null> <null> 0 6 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_attribute atttypmod 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 7 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_attribute attnotnull -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 8 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_attribute attisdropped -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 9 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_attribute atthasdef -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 10 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_class oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_class relname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_class relnamespace 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_class relkind 1 char 1 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_class relam 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_class reltuples 7 float 20 <null> 0 0 2 <null> <null> <null> <null> 0 6 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_class relpages 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 7 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_class relhasrules -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 8 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_class relhasoids -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 9 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_database oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_database datname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_database encoding 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_database datlastsysoid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_database datallowconn 1 char 1 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_database datconfig 2000 object 2147483647 <null> 0 0 2 <null> <null> <null> <null> 0 6 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_database datacl 2000 object 2147483647 <null> 0 0 2 <null> <null> <null> <null> 0 7 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_database datdba 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 8 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_database dattablespace 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 9 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_index oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_index indexrelid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_index indrelid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_index indisclustered -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_index indisunique -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_index indisprimary -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 6 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_index indexprs 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 7 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_index indkey 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 8 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_namespace oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_namespace nspname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_proc oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_proc proname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_proc proretset -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_proc prorettype 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_proc pronargs 5 short 5 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_proc proargtypes 2000 object 2147483647 <null> 0 0 2 <null> <null> <null> <null> 0 6 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_proc proargnames 2000 object 2147483647 <null> 0 0 2 <null> <null> <null> <null> 0 7 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_proc proargmodes 2000 object 2147483647 <null> 0 0 2 <null> <null> <null> <null> 0 8 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_proc proallargtypes 2000 object 2147483647 <null> 0 0 2 <null> <null> <null> <null> 0 9 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_proc pronamespace 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 10 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_trigger oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_trigger tgconstrrelid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_trigger tgfoid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_trigger tgargs 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_trigger tgnargs 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_trigger tgdeferrable -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 6 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_trigger tginitdeferred -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 7 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_trigger tgconstrname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 8 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_trigger tgrelid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 9 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_type oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_type typname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_type typnamespace 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_type typlen 5 short 5 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_type typtype 1 char 1 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_type typbasetype 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 6 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_type typtypmod 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 7 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_type typrelid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 8 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_type typelem 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 9 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_user oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_user usename 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_user usecreatedb -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
-PartsSupplier pg_catalog pg_user usesuper -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
+string string string string integer string integer string integer integer integer string string string string integer integer string string string string !
string string
+TABLE_CAT TABLE_SCHEM TABLE_NAME COLUMN_NAME DATA_TYPE TYPE_NAME COLUMN_SIZE BUFFER_LENGTH DECIMAL_DIGITS NUM_PREC_RADIX NULLABLE REMARKS COLUMN_DEF SQL_DATA_TYPE SQL_DATETIME_SUB CHAR_OCTET_LENGTH ORDINAL_POSITION IS_NULLABLE SCOPE_CATALOG SCOPE_SCHEMA SCOPE_TAB!
LE SOURCE_DATA_TYPE IS_AUTOINCREMENT
+PartsSupplier SYS Columns VDBName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Columns SchemaName 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS Columns TableName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 3 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Columns Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 4 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Columns Position 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 5 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Columns NameInSource 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 6 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS Columns DataType 12 string 100 <null> 0 10 0 <null> <null> <null> <null> 100 7 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Columns Scale 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 8 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Columns Length 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 9 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Columns IsLengthFixed -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 10 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Columns SupportsSelect -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 11 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Columns SupportsUpdates -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 12 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Columns IsCaseSensitive -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 13 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Columns IsSigned -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 14 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Columns IsCurrency -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 15 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Columns IsAutoIncremented -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 16 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Columns NullType 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 17 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Columns MinRange 12 string 50 <null> 0 10 1 <null> <null> <null> <null> 50 18 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS Columns MaxRange 12 string 50 <null> 0 10 1 <null> <null> <null> <null> 50 19 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS Columns DistinctCount 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 20 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS Columns NullCount 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 21 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS Columns SearchType 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 22 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Columns Format 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 23 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS Columns DefaultValue 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 24 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS Columns JavaClass 12 string 500 <null> 0 10 0 <null> <null> <null> <null> 500 25 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Columns Precision 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 26 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Columns CharOctetLength 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 27 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS Columns Radix 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 28 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Columns UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 29 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Columns Description 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 30 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS Columns OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 31 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS DataTypes Name 12 string 100 <null> 0 10 0 <null> <null> <null> <null> 100 1 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS DataTypes IsStandard -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 2 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS DataTypes IsPhysical -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 3 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS DataTypes TypeName 12 string 100 <null> 0 10 0 <null> <null> <null> <null> 100 4 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS DataTypes JavaClass 12 string 500 <null> 0 10 0 <null> <null> <null> <null> 500 5 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS DataTypes Scale 4 integer 10 <null> 0 10 1 <null> (0) <null> <null> 10 6 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS DataTypes TypeLength 4 integer 10 <null> 0 10 0 <null> (0) <null> <null> 10 7 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS DataTypes NullType 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 8 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS DataTypes IsSigned -7 boolean 1 <null> 0 10 0 <null> ('0') <null> <null> 1 9 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS DataTypes IsAutoIncremented -7 boolean 1 <null> 0 10 0 <null> ('0') <null> <null> 1 10 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS DataTypes IsCaseSensitive -7 boolean 1 <null> 0 10 0 <null> ('0') <null> <null> 1 11 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS DataTypes Precision 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 12 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS DataTypes Radix 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 13 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS DataTypes SearchType 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 14 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS DataTypes UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 15 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS DataTypes RuntimeType 12 string 64 <null> 0 10 1 <null> <null> <null> <null> 64 16 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS DataTypes BaseType 12 string 64 <null> 0 10 1 <null> <null> <null> <null> 64 17 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS DataTypes Description 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 18 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS DataTypes OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 19 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS KeyColumns VDBName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS KeyColumns SchemaName 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS KeyColumns TableName 12 string 2048 <null> 0 10 0 <null> <null> <null> <null> 2048 3 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS KeyColumns Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 4 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS KeyColumns KeyName 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 5 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS KeyColumns KeyType 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 6 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS KeyColumns RefKeyUID 12 string 50 <null> 0 10 1 <null> <null> <null> <null> 50 7 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS KeyColumns UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 8 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS KeyColumns Position 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 9 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS KeyColumns OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 10 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Keys VDBName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Keys SchemaName 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS Keys TableName 12 string 2048 <null> 0 10 0 <null> <null> <null> <null> 2048 3 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Keys Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 4 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Keys Description 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 5 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS Keys NameInSource 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 6 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS Keys Type 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 7 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Keys IsIndexed -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 8 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Keys RefKeyUID 12 string 50 <null> 0 10 1 <null> <null> <null> <null> 50 9 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS Keys UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 10 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Keys OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 11 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYSADMIN MatViews VDBName 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYSADMIN MatViews SchemaName 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 255 2 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYSADMIN MatViews Name 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 255 3 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYSADMIN MatViews TargetSchemaName 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 255 4 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYSADMIN MatViews TargetName 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 4000 5 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYSADMIN MatViews Valid -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 0 6 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYSADMIN MatViews LoadState 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 255 7 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYSADMIN MatViews Updated 93 timestamp 29 <null> 0 10 1 <null> <null> <null> <null> 0 8 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYSADMIN MatViews Cardinality 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 9 YES <null> <null> <null> !
<null> NO
+PartsSupplier PartsSupplier PARTSSUPPLIER.PARTS PART_ID 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 4 1 NO <null> <null> <null> !
<null> NO
+PartsSupplier PartsSupplier PARTSSUPPLIER.PARTS PART_NAME 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
+PartsSupplier PartsSupplier PARTSSUPPLIER.PARTS PART_COLOR 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 30 3 YES <null> <null> <null> !
<null> NO
+PartsSupplier PartsSupplier PARTSSUPPLIER.PARTS PART_WEIGHT 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 255 4 YES <null> <null> <null> !
<null> NO
+PartsSupplier PartsSupplier PARTSSUPPLIER.SHIP_VIA SHIPPER_ID 5 short 2 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+PartsSupplier PartsSupplier PARTSSUPPLIER.SHIP_VIA SHIPPER_NAME 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 30 2 YES <null> <null> <null> !
<null> NO
+PartsSupplier PartsSupplier PARTSSUPPLIER.STATUS STATUS_ID 5 short 2 <null> 0 10 0 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
+PartsSupplier PartsSupplier PARTSSUPPLIER.STATUS STATUS_NAME 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 30 2 YES <null> <null> <null> !
<null> NO
+PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER SUPPLIER_ID 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 1 NO <null> <null> <null> !
<null> NO
+PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER SUPPLIER_NAME 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 30 2 YES <null> <null> <null> !
<null> NO
+PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER SUPPLIER_STATUS 5 short 2 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER SUPPLIER_CITY 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 30 4 YES <null> <null> <null> !
<null> NO
+PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER SUPPLIER_STATE 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 2 5 YES <null> <null> <null> !
<null> NO
+PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS SUPPLIER_ID 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 10 1 NO <null> <null> <null> !
<null> NO
+PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS PART_ID 12 string 4000 <null> 0 10 0 <null> <null> <null> <null> 4 2 NO <null> <null> <null> !
<null> NO
+PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS QUANTITY 5 short 3 <null> 0 10 1 <null> <null> <null> <null> 0 3 YES <null> <null> <null> !
<null> NO
+PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS SHIPPER_ID 5 short 2 <null> 0 10 1 <null> <null> <null> <null> 0 4 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS ProcedureParams VDBName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS ProcedureParams SchemaName 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS ProcedureParams ProcedureName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 3 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS ProcedureParams Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 4 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS ProcedureParams DataType 12 string 25 <null> 0 10 0 <null> <null> <null> <null> 25 5 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS ProcedureParams Position 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 6 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS ProcedureParams Type 12 string 100 <null> 0 10 0 <null> <null> <null> <null> 100 7 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS ProcedureParams Optional -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 8 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS ProcedureParams Precision 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 9 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS ProcedureParams TypeLength 4 integer 10 <null> 0 10 0 <null> (0) <null> <null> 10 10 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS ProcedureParams Scale 4 integer 10 <null> 0 10 0 <null> (0) <null> <null> 10 11 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS ProcedureParams Radix 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 12 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS ProcedureParams NullType 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 13 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS ProcedureParams UID 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 50 14 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS ProcedureParams Description 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 255 15 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS ProcedureParams OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 16 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Procedures VDBName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Procedures SchemaName 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS Procedures Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 3 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Procedures NameInSource 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 4 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS Procedures ReturnsResults -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 5 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Procedures UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 6 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Procedures Description 12 string 225 <null> 0 10 1 <null> <null> <null> <null> 255 7 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS Procedures OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 8 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Properties Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Properties Value 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 2 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Properties UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 3 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Properties OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 4 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Properties ClobValue 2005 clob 2097152 <null> 0 10 1 <null> <null> <null> <null> 2097152 5 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS ReferenceKeyColumns PKTABLE_CAT 12 string 1 <null> 0 10 1 <null> <null> <null> <null> 255 1 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS ReferenceKeyColumns PKTABLE_SCHEM 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS ReferenceKeyColumns PKTABLE_NAME 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 3 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS ReferenceKeyColumns PKCOLUMN_NAME 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 4 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS ReferenceKeyColumns FKTABLE_CAT 12 string 1 <null> 0 10 1 <null> <null> <null> <null> 255 5 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS ReferenceKeyColumns FKTABLE_SCHEM 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 6 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS ReferenceKeyColumns FKTABLE_NAME 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 7 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS ReferenceKeyColumns FKCOLUMN_NAME 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 8 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS ReferenceKeyColumns KEY_SEQ 5 short 5 <null> 0 10 1 <null> <null> <null> <null> 5 9 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS ReferenceKeyColumns UPDATE_RULE 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 10 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS ReferenceKeyColumns DELETE_RULE 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 11 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS ReferenceKeyColumns FK_NAME 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 12 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS ReferenceKeyColumns PK_NAME 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 13 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS ReferenceKeyColumns DEFERRABILITY 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 14 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS Schemas VDBName 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 255 1 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS Schemas Name 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS Schemas IsPhysical -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 3 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Schemas UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 4 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Schemas Description 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 5 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS Schemas PrimaryMetamodelURI 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 6 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Schemas OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 7 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Tables VDBName 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 255 1 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS Tables SchemaName 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS Tables Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 3 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Tables Type 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 4 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Tables NameInSource 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 5 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS Tables IsPhysical -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 6 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Tables SupportsUpdates -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 7 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Tables UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 8 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Tables Cardinality 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 9 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Tables Description 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 10 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS Tables IsSystem -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 11 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS Tables IsMaterialized -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 0 12 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS Tables OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 13 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYSADMIN VDBResources resourcePath 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 255 1 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYSADMIN VDBResources contents 2004 blob 2147483647 <null> 0 10 1 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
+PartsSupplier SYS VirtualDatabases Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
+PartsSupplier SYS VirtualDatabases Version 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 2 NO <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog matpg_datatype oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog matpg_datatype typname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog matpg_datatype name 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog matpg_datatype uid 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog matpg_datatype typlen 5 short 5 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog matpg_relatt attrelid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog matpg_relatt attnum 5 short 5 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog matpg_relatt attname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog matpg_relatt relname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog matpg_relatt nspname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog matpg_relatt autoinc -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 6 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog matpg_relatt typoid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 7 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_am oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_am amname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_attrdef adrelid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_attrdef adnum 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_attrdef adbin 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_attrdef adsrc 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_attribute oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_attribute attrelid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_attribute attname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_attribute atttypid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_attribute attlen 5 short 5 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_attribute attnum 5 short 5 <null> 0 0 2 <null> <null> <null> <null> 0 6 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_attribute atttypmod 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 7 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_attribute attnotnull -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 8 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_attribute attisdropped -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 9 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_attribute atthasdef -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 10 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_class oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_class relname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_class relnamespace 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_class relkind 1 char 1 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_class relam 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_class reltuples 7 float 20 <null> 0 0 2 <null> <null> <null> <null> 0 6 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_class relpages 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 7 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_class relhasrules -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 8 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_class relhasoids -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 9 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_database oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_database datname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_database encoding 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_database datlastsysoid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_database datallowconn 1 char 1 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_database datconfig 2000 object 2147483647 <null> 0 0 2 <null> <null> <null> <null> 0 6 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_database datacl 2000 object 2147483647 <null> 0 0 2 <null> <null> <null> <null> 0 7 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_database datdba 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 8 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_database dattablespace 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 9 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_index oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_index indexrelid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_index indrelid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_index indisclustered -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_index indisunique -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_index indisprimary -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 6 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_index indexprs 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 7 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_index indkey 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 8 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_namespace oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_namespace nspname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_proc oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_proc proname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_proc proretset -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_proc prorettype 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_proc pronargs 5 short 5 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_proc proargtypes 2000 object 2147483647 <null> 0 0 2 <null> <null> <null> <null> 0 6 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_proc proargnames 2000 object 2147483647 <null> 0 0 2 <null> <null> <null> <null> 0 7 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_proc proargmodes 2000 object 2147483647 <null> 0 0 2 <null> <null> <null> <null> 0 8 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_proc proallargtypes 2000 object 2147483647 <null> 0 0 2 <null> <null> <null> <null> 0 9 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_proc pronamespace 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 10 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_trigger oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_trigger tgconstrrelid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_trigger tgfoid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_trigger tgargs 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_trigger tgnargs 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_trigger tgdeferrable -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 6 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_trigger tginitdeferred -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 7 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_trigger tgconstrname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 8 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_trigger tgrelid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 9 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_type oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_type typname 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_type typnamespace 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_type typlen 5 short 5 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_type typtype 1 char 1 <null> 0 0 2 <null> <null> <null> <null> 0 5 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_type typbasetype 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 6 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_type typtypmod 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 7 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_type typrelid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 8 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_type typelem 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 9 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_user oid 4 integer 10 <null> 0 0 2 <null> <null> <null> <null> 0 1 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_user usename 12 string 4000 <null> 0 0 2 <null> <null> <null> <null> 0 2 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_user usecreatedb -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 3 <null> <null> <null> !
<null> NO
+PartsSupplier pg_catalog pg_user usesuper -7 boolean 1 <null> 0 0 2 <null> <null> <null> <null> 0 4 <null> <null> <null> !
<null> NO
Row Count : 252
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 PartsSupplier java.lang.String TABLE_CAT string SYS Columns 255 255 0 false false false false 0 true true false false
SchemaName 12 PartsSupplier java.lang.String TABLE_SCHEM string SYS Columns 255 255 0 false true false true 1 false true true true
TableName 12 PartsSupplier java.lang.String TABLE_NAME string SYS Columns 255 255 0 false true false false 0 true true false false
Name 12 PartsSupplier java.lang.String COLUMN_NAME string SYS Columns 255 255 0 false false false false 0 true true false false
-DATA_TYPE 5 PartsSupplier java.lang.Short DATA_TYPE short <null> <null> 6 5 0 false false false true 1 false true true true
+Length 4 PartsSupplier java.lang.Integer DATA_TYPE integer SYS Columns 11 10 0 false false false false 0 true true false false
DataType 12 PartsSupplier java.lang.String TYPE_NAME string SYS Columns 100 100 0 false true false false 0 true true true false
-COLUMN_SIZE 4 PartsSupplier java.lang.Integer COLUMN_SIZE integer <null> <null> 11 10 0 false false false true 1 false true true true
+Precision 4 PartsSupplier java.lang.Integer COLUMN_SIZE integer SYS Columns 11 10 0 false false false false 0 true true false false
BUFFER_LENGTH 12 PartsSupplier java.lang.String BUFFER_LENGTH string <null> <null> 4000 4000 0 false false false true 1 false true true true
Scale 4 PartsSupplier java.lang.Integer DECIMAL_DIGITS integer SYS Columns 11 10 0 false false false false 0 true true false false
Radix 4 PartsSupplier java.lang.Integer NUM_PREC_RADIX integer SYS Columns 11 10 0 false false false false 0 true true false false
Modified: trunk/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testIndexInfo.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testIndexInfo.expected 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testIndexInfo.expected 2012-01-23 18:52:20 UTC (rev 3813)
@@ -1,5 +1,5 @@
string string string boolean string string integer short string string integer integer string
-VDBName SchemaName TableName NON_UNIQUE INDEX_QUALIFIER KeyName TYPE ORDINAL_POSITION Name ASC_OR_DESC CARDINALITY PAGES FILTER_CONDITION
+TABLE_CAT TABLE_SCHEM TABLE_NAME NON_UNIQUE INDEX_QUALIFIER INDEX_NAME TYPE ORDINAL_POSITION COLUMN_NAME ASC_OR_DESC CARDINALITY PAGES FILTER_CONDITION
PartsSupplier pg_catalog matpg_relatt true <null> idx_matpg_relatt_ids 0 1 attrelid <null> 0 1 <null>
PartsSupplier pg_catalog matpg_relatt true <null> idx_matpg_relatt_ids 0 2 attnum <null> 0 1 <null>
PartsSupplier pg_catalog matpg_datatype true <null> matpg_datatype_ids 0 1 typname <null> 0 1 <null>
Modified: trunk/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testPrimaryKeys.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testPrimaryKeys.expected 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testPrimaryKeys.expected 2012-01-23 18:52:20 UTC (rev 3813)
@@ -1,5 +1,5 @@
string string string string short string
-VDBName SchemaName TableName Name KEY_SEQ KeyName
+TABLE_CAT TABLE_SCHEM TABLE_NAME COLUMN_NAME KEY_SEQ PK_NAME
PartsSupplier PartsSupplier PARTSSUPPLIER.PARTS PART_ID 1 PK_PARTS
PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS PART_ID 2 PK_SUPPLIER_PARTS
PartsSupplier PartsSupplier PARTSSUPPLIER.SHIP_VIA SHIPPER_ID 1 PK_SHIP_VIA
Modified: trunk/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testProcedureColumns.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testProcedureColumns.expected 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testProcedureColumns.expected 2012-01-23 18:52:20 UTC (rev 3813)
@@ -1,32 +1,32 @@
-string string string string short integer string integer integer short integer integer string string string string string integer string string
-VDBName SchemaName ProcedureName Name COLUMN_TYPE DATA_TYPE DataType PRECISION LENGTH SCALE Radix NULLABLE Description COLUMN_DEF SQL_DATA_TYPE SQL_DATETIME_SUB CHAR_OCTET_LENGTH Position IS_NULLABLE ProcedureName
-PartsSupplier SYS getXMLSchemas document 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 1 NO getXMLSchemas
-PartsSupplier SYS getXMLSchemas schema 3 2009 xml 2147483647 2147483647 0 10 1 <null> <null> <null> <null> <null> 1 YES getXMLSchemas
-PartsSupplier SYSADMIN isLoggable level 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 2 NO isLoggable
-PartsSupplier SYSADMIN isLoggable context 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 3 NO isLoggable
-PartsSupplier SYSADMIN isLoggable loggable 5 -7 boolean 1 1 0 10 0 <null> <null> <null> <null> <null> 1 NO isLoggable
-PartsSupplier SYSADMIN logMsg level 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 2 NO logMsg
-PartsSupplier SYSADMIN logMsg context 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 3 NO logMsg
-PartsSupplier SYSADMIN logMsg msg 1 2000 object 2147483647 2147483647 0 10 0 <null> <null> <null> <null> <null> 4 NO logMsg
-PartsSupplier SYSADMIN logMsg logged 5 -7 boolean 1 1 0 10 0 <null> <null> <null> <null> <null> 1 NO logMsg
-PartsSupplier SYSADMIN refreshMatView ViewName 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 1 NO refreshMatView
-PartsSupplier SYSADMIN refreshMatView Invalidate 1 -7 boolean 1 1 0 10 0 <null> <null> <null> <null> <null> 2 NO refreshMatView
-PartsSupplier SYSADMIN refreshMatView RowsUpdated 5 4 integer 10 10 0 10 0 <null> <null> <null> <null> <null> 3 NO refreshMatView
-PartsSupplier SYSADMIN refreshMatViewRow ViewName 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 1 NO refreshMatViewRow
-PartsSupplier SYSADMIN refreshMatViewRow Key 1 2000 object 2147483647 2147483647 0 10 0 <null> <null> <null> <null> <null> 2 NO refreshMatViewRow
-PartsSupplier SYSADMIN refreshMatViewRow RowsUpdated 5 4 integer 10 10 0 10 0 <null> <null> <null> <null> <null> 3 NO refreshMatViewRow
-PartsSupplier SYSADMIN setColumnStats tableName 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 1 NO setColumnStats
-PartsSupplier SYSADMIN setColumnStats columnName 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 2 NO setColumnStats
-PartsSupplier SYSADMIN setColumnStats distinctCount 1 4 integer 10 10 0 10 1 <null> <null> <null> <null> <null> 3 YES setColumnStats
-PartsSupplier SYSADMIN setColumnStats nullCount 1 4 integer 10 10 0 10 1 <null> <null> <null> <null> <null> 4 YES setColumnStats
-PartsSupplier SYSADMIN setColumnStats max 1 12 string 4000 4000 0 10 1 <null> <null> <null> <null> <null> 5 YES setColumnStats
-PartsSupplier SYSADMIN setColumnStats min 1 12 string 4000 4000 0 10 1 <null> <null> <null> <null> <null> 6 YES setColumnStats
-PartsSupplier SYSADMIN setProperty UID 1 12 string 4000 50 0 10 0 <null> <null> <null> <null> <null> 2 NO setProperty
-PartsSupplier SYSADMIN setProperty Name 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 3 NO setProperty
-PartsSupplier SYSADMIN setProperty Value 1 2005 clob 2147483647 2097152 0 10 1 <null> <null> <null> <null> <null> 4 YES setProperty
-PartsSupplier SYSADMIN setProperty OldValue 5 2005 clob 2147483647 2097152 0 10 0 <null> <null> <null> <null> <null> 1 NO setProperty
-PartsSupplier SYSADMIN setTableStats tableName 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 1 NO setTableStats
-PartsSupplier SYSADMIN setTableStats cardinality 1 4 integer 10 10 0 10 0 <null> <null> <null> <null> <null> 2 NO setTableStats
+string string string string short integer string integer integer short integer integer string string string string string integer string string
+PROCEDURE_CAT PROCEDURE_SCHEM PROCEDURE_NAME COLUMN_NAME COLUMN_TYPE DATA_TYPE TYPE_NAME PRECISION LENGTH SCALE RADIX NULLABLE REMARKS COLUMN_DEF SQL_DATA_TYPE SQL_DATETIME_SUB CHAR_OCTET_LENGTH ORDINAL_POSITION IS_NULLABLE SPECIFIC_NAME
+PartsSupplier SYS getXMLSchemas document 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 1 NO getXMLSchemas
+PartsSupplier SYS getXMLSchemas schema 3 2009 xml 2147483647 2147483647 0 10 1 <null> <null> <null> <null> <null> 1 YES getXMLSchemas
+PartsSupplier SYSADMIN isLoggable level 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 2 NO isLoggable
+PartsSupplier SYSADMIN isLoggable context 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 3 NO isLoggable
+PartsSupplier SYSADMIN isLoggable loggable 5 -7 boolean 1 1 0 10 0 <null> <null> <null> <null> <null> 1 NO isLoggable
+PartsSupplier SYSADMIN logMsg level 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 2 NO logMsg
+PartsSupplier SYSADMIN logMsg context 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 3 NO logMsg
+PartsSupplier SYSADMIN logMsg msg 1 2000 object 2147483647 2147483647 0 10 0 <null> <null> <null> <null> <null> 4 NO logMsg
+PartsSupplier SYSADMIN logMsg logged 5 -7 boolean 1 1 0 10 0 <null> <null> <null> <null> <null> 1 NO logMsg
+PartsSupplier SYSADMIN refreshMatView ViewName 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 1 NO refreshMatView
+PartsSupplier SYSADMIN refreshMatView Invalidate 1 -7 boolean 1 1 0 10 0 <null> <null> <null> <null> <null> 2 NO refreshMatView
+PartsSupplier SYSADMIN refreshMatView RowsUpdated 5 4 integer 10 10 0 10 0 <null> <null> <null> <null> <null> 3 NO refreshMatView
+PartsSupplier SYSADMIN refreshMatViewRow ViewName 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 1 NO refreshMatViewRow
+PartsSupplier SYSADMIN refreshMatViewRow Key 1 2000 object 2147483647 2147483647 0 10 0 <null> <null> <null> <null> <null> 2 NO refreshMatViewRow
+PartsSupplier SYSADMIN refreshMatViewRow RowsUpdated 5 4 integer 10 10 0 10 0 <null> <null> <null> <null> <null> 3 NO refreshMatViewRow
+PartsSupplier SYSADMIN setColumnStats tableName 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 1 NO setColumnStats
+PartsSupplier SYSADMIN setColumnStats columnName 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 2 NO setColumnStats
+PartsSupplier SYSADMIN setColumnStats distinctCount 1 4 integer 10 10 0 10 1 <null> <null> <null> <null> <null> 3 YES setColumnStats
+PartsSupplier SYSADMIN setColumnStats nullCount 1 4 integer 10 10 0 10 1 <null> <null> <null> <null> <null> 4 YES setColumnStats
+PartsSupplier SYSADMIN setColumnStats max 1 12 string 4000 4000 0 10 1 <null> <null> <null> <null> <null> 5 YES setColumnStats
+PartsSupplier SYSADMIN setColumnStats min 1 12 string 4000 4000 0 10 1 <null> <null> <null> <null> <null> 6 YES setColumnStats
+PartsSupplier SYSADMIN setProperty UID 1 12 string 4000 50 0 10 0 <null> <null> <null> <null> <null> 2 NO setProperty
+PartsSupplier SYSADMIN setProperty Name 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 3 NO setProperty
+PartsSupplier SYSADMIN setProperty Value 1 2005 clob 2147483647 2097152 0 10 1 <null> <null> <null> <null> <null> 4 YES setProperty
+PartsSupplier SYSADMIN setProperty OldValue 5 2005 clob 2147483647 2097152 0 10 0 <null> <null> <null> <null> <null> 1 NO setProperty
+PartsSupplier SYSADMIN setTableStats tableName 1 12 string 4000 4000 0 10 0 <null> <null> <null> <null> <null> 1 NO setTableStats
+PartsSupplier SYSADMIN setTableStats cardinality 1 4 integer 10 10 0 10 0 <null> <null> <null> <null> <null> 2 NO setTableStats
Row Count : 27
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
VDBName 12 PartsSupplier java.lang.String PROCEDURE_CAT string SYS ProcedureParams 255 255 0 false false false false 0 true true false false
@@ -36,8 +36,8 @@
COLUMN_TYPE 5 PartsSupplier java.lang.Short COLUMN_TYPE short <null> <null> 6 5 0 false false false true 1 false true true true
DATA_TYPE 4 PartsSupplier java.lang.Integer DATA_TYPE integer <null> <null> 11 10 0 false false false true 1 false true true true
DataType 12 PartsSupplier java.lang.String TYPE_NAME string SYS ProcedureParams 25 25 0 false true false false 0 true true true false
-PRECISION 4 PartsSupplier java.lang.Integer PRECISION integer <null> <null> 11 10 0 false false false true 1 false true true true
-LENGTH 4 PartsSupplier java.lang.Integer LENGTH integer <null> <null> 11 10 0 false false false true 1 false true true true
+Precision 4 PartsSupplier java.lang.Integer PRECISION integer SYS ProcedureParams 11 10 0 false false false false 0 true true false false
+TypeLength 4 PartsSupplier java.lang.Integer LENGTH integer SYS ProcedureParams 11 10 0 false false false false 0 true true false false
SCALE 5 PartsSupplier java.lang.Short SCALE short <null> <null> 6 5 0 false false false true 1 false true true true
Radix 4 PartsSupplier java.lang.Integer RADIX integer SYS ProcedureParams 11 10 0 false false false false 0 true true false false
NULLABLE 4 PartsSupplier java.lang.Integer NULLABLE integer <null> <null> 11 10 0 false false false true 1 false true true true
Modified: trunk/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testProcedures.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testProcedures.expected 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testProcedures.expected 2012-01-23 18:52:20 UTC (rev 3813)
@@ -1,5 +1,5 @@
string string string string string string string short string
-VDBName SchemaName Name RESERVED_1 RESERVED_2 RESERVED_3 Description PROCEDURE_TYPE Name
+PROCEDURE_CAT PROCEDURE_SCHEM PROCEDURE_NAME RESERVED_1 RESERVED_2 RESERVED_3 REMARKS PROCEDURE_TYPE SPECIFIC_NAME
PartsSupplier SYS getXMLSchemas <null> <null> <null> <null> 2 getXMLSchemas
PartsSupplier SYSADMIN isLoggable <null> <null> <null> <null> 1 isLoggable
PartsSupplier SYSADMIN logMsg <null> <null> <null> <null> 1 logMsg
Modified: trunk/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testSchemas.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testSchemas.expected 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testSchemas.expected 2012-01-23 18:52:20 UTC (rev 3813)
@@ -1,5 +1,5 @@
string string
-Name VDBName
+TABLE_SCHEM TABLE_CATALOG
PartsSupplier PartsSupplier
SYS PartsSupplier
SYSADMIN PartsSupplier
Modified: trunk/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testTables.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testTables.expected 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testTables.expected 2012-01-23 18:52:20 UTC (rev 3813)
@@ -1,5 +1,5 @@
string string string string string string string string string string boolean
-VDBName SchemaName Name TABLE_TYPE Description TYPE_CAT TYPE_SCHEM TYPE_NAME SELF_REFERENCING_COL_NAME REF_GENERATION IsPhysical
+TABLE_CAT TABLE_SCHEM TABLE_NAME TABLE_TYPE REMARKS TYPE_CAT TYPE_SCHEM TYPE_NAME SELF_REFERENCING_COL_NAME REF_GENERATION ISPHYSICAL
PartsSupplier SYS Columns SYSTEM TABLE <null> <null> <null> <null> <null> <null> true
PartsSupplier SYS DataTypes SYSTEM TABLE <null> <null> <null> <null> <null> <null> true
PartsSupplier SYS KeyColumns SYSTEM TABLE <null> <null> <null> <null> <null> <null> true
Modified: trunk/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testTypeInfo.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testTypeInfo.expected 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testTypeInfo.expected 2012-01-23 18:52:20 UTC (rev 3813)
@@ -17,8 +17,9 @@
timestamp 93 29 {ts' } <null> 1 false 3 true true false timestamp 0 255 <null> <null> 0
object 2000 2147483647 <null> <null> <null> 1 false 3 true true false object 0 255 <null> <null> 0
blob 2004 2147483647 <null> <null> <null> 1 false 3 true true false blob 0 255 <null> <null> 0
+varbinary -3 8192 X' ' <null> 1 false 3 true true false varbinary 0 255 <null> <null> 0
clob 2005 2147483647 <null> <null> <null> 1 false 3 true true false clob 0 255 <null> <null> 0
-Row Count : 18
+Row Count : 19
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
TYPE_NAME 12 PartsSupplier java.lang.String TYPE_NAME string SYS DataTypes 4000 4000 0 false false false false 0 true true false false
DATA_TYPE 4 PartsSupplier java.lang.Integer DATA_TYPE integer SYS DataTypes 11 10 0 false false false true 1 false true true true
Modified: trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testDataTypes.expected
===================================================================
--- trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testDataTypes.expected 2012-01-23 16:18:22 UTC (rev 3812)
+++ trunk/test-integration/common/src/test/resources/TestSystemVirtualModel/testDataTypes.expected 2012-01-23 18:52:20 UTC (rev 3813)
@@ -52,7 +52,8 @@
unsignedInt false false unsignedInt java.lang.Long 0 0 No Nulls false false false 0 0 Searchable mmuuid:badcbd80-ba63-1e21-b812-969c8fc8b016 long unsignedLong <null> 50
unsignedLong false false unsignedLong java.math.BigInteger 0 0 No Nulls false false false 0 0 Searchable mmuuid:54b98780-ba14-1e21-b812-969c8fc8b016 biginteger nonNegativeInteger <null> 51
unsignedShort false false unsignedShort java.lang.Integer 0 0 No Nulls false false false 0 0 Searchable mmuuid:327093c0-ba88-1e21-b812-969c8fc8b016 integer unsignedInt <null> 52
-Row Count : 52
+varbinary false false varbinary org.teiid.core.types.BinaryType 0 0 No Nulls false false false 0 0 Searchable mmuuid:182fd511-1a3e-447a-a6ea-72569d6a22ec varbinary base64Binary <null> 53
+Row Count : 53
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
Name 12 PartsSupplier java.lang.String Name string SYS DataTypes 100 100 0 false true false false 0 true true true false
IsStandard -7 PartsSupplier java.lang.Boolean IsStandard boolean SYS DataTypes 5 1 0 false true false false 1 true true true false