teiid SVN: r3049 - in branches/7.1.x: engine/src/test/java/org/teiid/dqp/internal/process and 10 other directories.
by teiid-commitsï¼ lists.jboss.org
Author: rareddy
Date: 2011-03-29 17:52:50 -0400 (Tue, 29 Mar 2011)
New Revision: 3049
Modified:
branches/7.1.x/engine/src/main/java/org/teiid/dqp/internal/process/DataTierManagerImpl.java
branches/7.1.x/engine/src/main/java/org/teiid/dqp/internal/process/MetaDataProcessor.java
branches/7.1.x/engine/src/test/java/org/teiid/dqp/internal/process/TestMetaDataProcessor.java
branches/7.1.x/runtime/src/main/java/org/teiid/deployers/PgCatalogMetadataStore.java
branches/7.1.x/runtime/src/main/java/org/teiid/odbc/ODBCClientRemote.java
branches/7.1.x/runtime/src/main/java/org/teiid/odbc/ODBCServerRemoteImpl.java
branches/7.1.x/runtime/src/main/java/org/teiid/transport/PgBackendProtocol.java
branches/7.1.x/test-integration/common/src/test/java/org/teiid/jdbc/TestVDBMerge.java
branches/7.1.x/test-integration/common/src/test/java/org/teiid/systemmodel/TestResultSetMetadata.java
branches/7.1.x/test-integration/common/src/test/java/org/teiid/systemmodel/TestSystemVirtualModel.java
branches/7.1.x/test-integration/common/src/test/resources/TestCase3473/testGetPrimaryKeys.expected
branches/7.1.x/test-integration/common/src/test/resources/TestCase3473/testGetTables.expected
branches/7.1.x/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetColumns.expected
branches/7.1.x/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetColumns2.expected
branches/7.1.x/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetColumns3.expected
branches/7.1.x/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetColumns4.expected
branches/7.1.x/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetColumnsSingleMatch.expected
branches/7.1.x/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetIndexInfo.expected
branches/7.1.x/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetIndexInfoWithEscape.expected
branches/7.1.x/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetPrimaryKeys.expected
branches/7.1.x/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetPrimaryKeysWithEscape.expected
branches/7.1.x/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetProcedureColumns.expected
branches/7.1.x/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetProcedures.expected
branches/7.1.x/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetProceduresWithEscape.expected
branches/7.1.x/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetSchemas.expected
branches/7.1.x/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetTables.expected
branches/7.1.x/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetTables_allTables.expected
branches/7.1.x/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetTables_specificTable.expected
branches/7.1.x/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetTables_specificTableMultipleTypes.expected
branches/7.1.x/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetTables_specificTableTypes.expected
branches/7.1.x/test-integration/common/src/test/resources/TestODBCSchema/test_PG_ATTRDEF.expected
branches/7.1.x/test-integration/common/src/test/resources/TestODBCSchema/test_PG_ATTRIBUTE.expected
branches/7.1.x/test-integration/common/src/test/resources/TestODBCSchema/test_PG_CLASS.expected
branches/7.1.x/test-integration/common/src/test/resources/TestODBCSchema/test_PG_INDEX.expected
branches/7.1.x/test-integration/common/src/test/resources/TestODBCSchema/test_PG_NAMESPACE.expected
branches/7.1.x/test-integration/common/src/test/resources/TestODBCSchema/test_PG_PROC.expected
branches/7.1.x/test-integration/common/src/test/resources/TestODBCSchema/test_PG_TYPE.expected
branches/7.1.x/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testColumns.expected
branches/7.1.x/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testIndexInfo.expected
branches/7.1.x/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testPrimaryKeys.expected
branches/7.1.x/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testProcedureColumns.expected
branches/7.1.x/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testProcedures.expected
branches/7.1.x/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testSchemas.expected
branches/7.1.x/test-integration/common/src/test/resources/TestPartsDatabaseMetadata/testTables.expected
branches/7.1.x/test-integration/common/src/test/resources/TestSystemVirtualModel/testColumns.expected
branches/7.1.x/test-integration/common/src/test/resources/TestSystemVirtualModel/testDataTypes.expected
branches/7.1.x/test-integration/common/src/test/resources/TestSystemVirtualModel/testKeyColumns.expected
branches/7.1.x/test-integration/common/src/test/resources/TestSystemVirtualModel/testKeys.expected
branches/7.1.x/test-integration/common/src/test/resources/TestSystemVirtualModel/testProcedureParams.expected
branches/7.1.x/test-integration/common/src/test/resources/TestSystemVirtualModel/testProcedures.expected
branches/7.1.x/test-integration/common/src/test/resources/TestSystemVirtualModel/testSchemas.expected
branches/7.1.x/test-integration/common/src/test/resources/TestSystemVirtualModel/testTables.expected
Log:
TEIID-1515: adding the SteveH's changes from 7.4 for resultset metadata and auto-increment. This also fixes the nullability issue.
Modified: branches/7.1.x/engine/src/main/java/org/teiid/dqp/internal/process/DataTierManagerImpl.java
===================================================================
--- branches/7.1.x/engine/src/main/java/org/teiid/dqp/internal/process/DataTierManagerImpl.java 2011-03-29 16:29:51 UTC (rev 3048)
+++ branches/7.1.x/engine/src/main/java/org/teiid/dqp/internal/process/DataTierManagerImpl.java 2011-03-29 21:52:50 UTC (rev 3049)
@@ -148,7 +148,7 @@
CompositeMetadataStore metadata = vdb.getAttachment(TransformationMetadata.class).getMetadataStore();
TransformationMetadata indexMetadata = vdb.getAttachment(TransformationMetadata.class);
Collection rows = new ArrayList();
- int oid = 0;
+ int oid = 1;
if (command instanceof Query) {
Query query = (Query)command;
UnaryFromClause ufc = (UnaryFromClause)query.getFrom().getClauses().get(0);
Modified: branches/7.1.x/engine/src/main/java/org/teiid/dqp/internal/process/MetaDataProcessor.java
===================================================================
--- branches/7.1.x/engine/src/main/java/org/teiid/dqp/internal/process/MetaDataProcessor.java 2011-03-29 16:29:51 UTC (rev 3048)
+++ branches/7.1.x/engine/src/main/java/org/teiid/dqp/internal/process/MetaDataProcessor.java 2011-03-29 21:52:50 UTC (rev 3049)
@@ -228,16 +228,16 @@
return xmlMetadata;
}
- private Map createColumnMetadata(String shortColumnName, SingleElementSymbol symbol) throws QueryMetadataException, TeiidComponentException {
+ private Map createColumnMetadata(String label, SingleElementSymbol symbol) throws QueryMetadataException, TeiidComponentException {
if(symbol instanceof ElementSymbol) {
- return createElementMetadata(shortColumnName, (ElementSymbol) symbol);
+ return createElementMetadata(label, (ElementSymbol) symbol);
} else if(symbol instanceof AggregateSymbol) {
- return createAggregateMetadata(shortColumnName, (AggregateSymbol) symbol);
+ return createAggregateMetadata(label, (AggregateSymbol) symbol);
}
- return createTypedMetadata(shortColumnName, symbol);
+ return createTypedMetadata(label, symbol);
}
- private Map createElementMetadata(String shortColumnName, ElementSymbol symbol) throws QueryMetadataException, TeiidComponentException {
+ private Map createElementMetadata(String label, ElementSymbol symbol) throws QueryMetadataException, TeiidComponentException {
Object elementID = symbol.getMetadataID();
Map column = new HashMap();
@@ -246,8 +246,8 @@
column.put(ResultsMetadataConstants.CURRENCY, Boolean.FALSE);
Class type = symbol.getType();
column.put(ResultsMetadataConstants.DATA_TYPE, DataTypeManager.getDataTypeName(type));
- column.put(ResultsMetadataConstants.ELEMENT_LABEL, shortColumnName);
- column.put(ResultsMetadataConstants.ELEMENT_NAME, shortColumnName);
+ column.put(ResultsMetadataConstants.ELEMENT_LABEL, label);
+ column.put(ResultsMetadataConstants.ELEMENT_NAME, symbol.getShortName());
GroupSymbol group = symbol.getGroupSymbol();
if(group == null) {
Modified: branches/7.1.x/engine/src/test/java/org/teiid/dqp/internal/process/TestMetaDataProcessor.java
===================================================================
--- branches/7.1.x/engine/src/test/java/org/teiid/dqp/internal/process/TestMetaDataProcessor.java 2011-03-29 16:29:51 UTC (rev 3048)
+++ branches/7.1.x/engine/src/test/java/org/teiid/dqp/internal/process/TestMetaDataProcessor.java 2011-03-29 21:52:50 UTC (rev 3049)
@@ -98,7 +98,7 @@
Map[] metadata = helpGetMetadata("SELECT E2 FROM pm1.g1", FakeMetadataFactory.example1Cached(), FakeMetadataFactory.example1VDB()); //$NON-NLS-1$
assertNotNull(metadata);
assertEquals(1, metadata.length);
- assertEquals("E2", metadata[0].get(ResultsMetadataConstants.ELEMENT_NAME)); //$NON-NLS-1$
+ assertEquals("e2", metadata[0].get(ResultsMetadataConstants.ELEMENT_NAME)); //$NON-NLS-1$
}
public void testSimpleExec() throws Exception {
Modified: branches/7.1.x/runtime/src/main/java/org/teiid/deployers/PgCatalogMetadataStore.java
===================================================================
--- branches/7.1.x/runtime/src/main/java/org/teiid/deployers/PgCatalogMetadataStore.java 2011-03-29 16:29:51 UTC (rev 3048)
+++ branches/7.1.x/runtime/src/main/java/org/teiid/deployers/PgCatalogMetadataStore.java 2011-03-29 21:52:50 UTC (rev 3049)
@@ -55,6 +55,7 @@
add_pg_attrdef();
add_pg_database();
add_pg_user();
+ add_matpg_relatt();
}
@Override
@@ -98,15 +99,15 @@
// column defaul values
private Table add_pg_attrdef() throws TranslatorException {
Table t = createView("pg_attrdef"); //$NON-NLS-1$
-
- addColumn("oid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
- addColumn("adsrc", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+
addColumn("adrelid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
- addColumn("adnum", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+ addColumn("adnum", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+ addColumn("adbin", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
+ addColumn("adsrc", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
- String transformation = "SELECT 0 as oid, 0 as adsrc, 0 as adrelid, 0 as adnum"; //$NON-NLS-1$
+ String transformation = "SELECT null as oid, null as adsrc, null as adrelid, null as adnum from sys.tables where 1 = 0"; //$NON-NLS-1$
t.setSelectTransformation(transformation);
- return t;
+ return t;
}
// table columns ("attributes")
@@ -441,4 +442,24 @@
t.setSelectTransformation(transformation);
return t;
}
+
+ private Table add_matpg_relatt() throws TranslatorException {
+ Table t = createView("matpg_relatt"); //$NON-NLS-1$
+ addColumn("attrelid", DataTypeManager.DefaultDataTypes.INTEGER, t); //$NON-NLS-1$
+ addColumn("attnum", DataTypeManager.DefaultDataTypes.SHORT, t); //$NON-NLS-1$
+ addColumn("attname", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
+ addColumn("relname", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
+ addColumn("nspname", DataTypeManager.DefaultDataTypes.STRING, t); //$NON-NLS-1$
+ addColumn("autoinc", DataTypeManager.DefaultDataTypes.BOOLEAN, t); //$NON-NLS-1$
+
+ addPrimaryKey("pk_matpg_relatt_names", Arrays.asList("attname", "relname", "nspname"), t); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
+ addIndex("idx_matpg_relatt_ids", true, Arrays.asList("attrelid", "attnum"), t); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ String transformation = "select pg_class.oid as attrelid, attnum, attname, relname, nspname, IsAutoIncremented as autoinc " + //$NON-NLS-1$
+ "from pg_attribute, pg_class, pg_namespace, SYS.Columns " + //$NON-NLS-1$
+ "where pg_attribute.attrelid = pg_class.oid and pg_namespace.oid = relnamespace" + //$NON-NLS-1$
+ " and SchemaName = nspname and TableName = relname and Name = attname"; //$NON-NLS-1$
+ t.setSelectTransformation(transformation);
+ t.setMaterialized(true);
+ return t;
+ }
}
Modified: branches/7.1.x/runtime/src/main/java/org/teiid/odbc/ODBCClientRemote.java
===================================================================
--- branches/7.1.x/runtime/src/main/java/org/teiid/odbc/ODBCClientRemote.java 2011-03-29 16:29:51 UTC (rev 3048)
+++ branches/7.1.x/runtime/src/main/java/org/teiid/odbc/ODBCClientRemote.java 2011-03-29 21:52:50 UTC (rev 3049)
@@ -25,6 +25,7 @@
import java.sql.ParameterMetaData;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
+import java.sql.Statement;
import java.util.Properties;
public interface ODBCClientRemote {
@@ -60,7 +61,7 @@
// RowDescription (B)
// NoData (B)
- void sendResultSetDescription(ResultSetMetaData metaData);
+ void sendResultSetDescription(ResultSetMetaData metaData, Statement stmt);
// DataRow (B)
// CommandComplete (B)
Modified: branches/7.1.x/runtime/src/main/java/org/teiid/odbc/ODBCServerRemoteImpl.java
===================================================================
--- branches/7.1.x/runtime/src/main/java/org/teiid/odbc/ODBCServerRemoteImpl.java 2011-03-29 16:29:51 UTC (rev 3048)
+++ branches/7.1.x/runtime/src/main/java/org/teiid/odbc/ODBCServerRemoteImpl.java 2011-03-29 21:52:50 UTC (rev 3049)
@@ -53,18 +53,18 @@
private static Pattern pkPattern = Pattern.compile("select ta.attname, ia.attnum, ic.relname, n.nspname, tc.relname " +//$NON-NLS-1$
"from pg_catalog.pg_attribute ta, pg_catalog.pg_attribute ia, pg_catalog.pg_class tc, pg_catalog.pg_index i, " +//$NON-NLS-1$
- "pg_catalog.pg_namespace n, pg_catalog.pg_class ic where tc.relname = E?'(\\w+)' AND n.nspname = E?'(\\w+)'.*" );//$NON-NLS-1$
+ "pg_catalog.pg_namespace n, pg_catalog.pg_class ic where tc.relname = (E?(?:'[^']*')+) AND n.nspname = (E?(?:'[^']*')+).*" );//$NON-NLS-1$
private static Pattern pkKeyPattern = Pattern.compile("select ta.attname, ia.attnum, ic.relname, n.nspname, NULL from " + //$NON-NLS-1$
"pg_catalog.pg_attribute ta, pg_catalog.pg_attribute ia, pg_catalog.pg_class ic, pg_catalog.pg_index i, " + //$NON-NLS-1$
- "pg_catalog.pg_namespace n where ic.relname = E?'(\\w+)' AND n.nspname = E?'(\\w+)' .*"); //$NON-NLS-1$
+ "pg_catalog.pg_namespace n where ic.relname = (E?(?:'[^']*')+) AND n.nspname = (E?(?:'[^']*')+) .*"); //$NON-NLS-1$
- private Pattern fkPattern = Pattern.compile("select\\s+'(\\w+)'::name as PKTABLE_CAT," + //$NON-NLS-1$
+ private Pattern fkPattern = Pattern.compile("select\\s+((?:'[^']*')+)::name as PKTABLE_CAT," + //$NON-NLS-1$
"\\s+n2.nspname as PKTABLE_SCHEM," + //$NON-NLS-1$
"\\s+c2.relname as PKTABLE_NAME," + //$NON-NLS-1$
"\\s+a2.attname as PKCOLUMN_NAME," + //$NON-NLS-1$
- "\\s+'(\\w+)'::name as FKTABLE_CAT," + //$NON-NLS-1$
+ "\\s+((?:'[^']*')+)::name as FKTABLE_CAT," + //$NON-NLS-1$
"\\s+n1.nspname as FKTABLE_SCHEM," + //$NON-NLS-1$
"\\s+c1.relname as FKTABLE_NAME," + //$NON-NLS-1$
"\\s+a1.attname as FKCOLUMN_NAME," + //$NON-NLS-1$
@@ -103,9 +103,9 @@
"\\s+pg_catalog.pg_namespace n" + //$NON-NLS-1$
"\\s+where contype = 'f' " + //$NON-NLS-1$
"\\s+and conrelid = c.oid" + //$NON-NLS-1$
- "\\s+and relname = E?'(\\w+)'" + //$NON-NLS-1$
+ "\\s+and relname = (E?(?:'[^']*')+)" + //$NON-NLS-1$
"\\s+and n.oid = c.relnamespace" + //$NON-NLS-1$
- "\\s+and n.nspname = E?'(\\w+)'" + //$NON-NLS-1$
+ "\\s+and n.nspname = (E?(?:'[^']*')+)" + //$NON-NLS-1$
"\\s+\\) ref" + //$NON-NLS-1$
"\\s+inner join pg_catalog.pg_class c1" + //$NON-NLS-1$
"\\s+on c1.oid = ref.conrelid\\)" + //$NON-NLS-1$
@@ -130,10 +130,13 @@
"nspname, p.oid, atttypid, attname, proargnames, proargmodes, proallargtypes from ((pg_catalog.pg_namespace n inner join " + //$NON-NLS-1$
"pg_catalog.pg_proc p on p.pronamespace = n.oid) inner join pg_type t on t.oid = p.prorettype) left outer join " + //$NON-NLS-1$
"pg_attribute a on a.attrelid = t.typrelid and attnum > 0 and not attisdropped " + //$NON-NLS-1$
- "where has_function_privilege(p.oid, 'EXECUTE') and nspname like E?'(\\w+)' " + //$NON-NLS-1$
- "and proname like E?'(\\w+)' " + //$NON-NLS-1$
+ "where has_function_privilege(p.oid, 'EXECUTE') and nspname like (E?(?:'[^']*')+) " + //$NON-NLS-1$
+ "and proname like (E?(?:'[^']*')+) " + //$NON-NLS-1$
"order by nspname, proname, p.oid, attnum"); //$NON-NLS-1$
+ private static Pattern preparedAutoIncrement = Pattern.compile("select 1 \\s*from pg_catalog.pg_attrdef \\s*where adrelid = \\$1 AND adnum = \\$2 " + //$NON-NLS-1$
+ "\\s*and pg_catalog.pg_get_expr\\(adbin, adrelid\\) \\s*like '%nextval\\(%'", Pattern.CASE_INSENSITIVE); //$NON-NLS-1$
+
private static Pattern deallocatePattern = Pattern.compile("DEALLOCATE \"(\\w+\\d+_*)\""); //$NON-NLS-1$
private static Pattern releasePattern = Pattern.compile("RELEASE (\\w+\\d+_*)"); //$NON-NLS-1$
private static Pattern savepointPattern = Pattern.compile("SAVEPOINT (\\w+\\d+_*)"); //$NON-NLS-1$
@@ -344,6 +347,9 @@
else if (modified.equalsIgnoreCase("select db_name() dbname")) { //$NON-NLS-1$
modified = "SELECT current_database()"; //$NON-NLS-1$
}
+ else if (preparedAutoIncrement.matcher(modified).matches()) {
+ return "SELECT 1 from matpg_relatt where attrelid = ? and attnum = ? and autoinc = true"; //$NON-NLS-1$
+ }
else {
modified = modified.replaceAll("E'", "'"); //$NON-NLS-1$ //$NON-NLS-2$
modified = modified.replaceAll("::[A-Za-z0-9]*", " "); //$NON-NLS-1$ //$NON-NLS-2$
@@ -372,28 +378,10 @@
modified = "SELECT 'SET'"; //$NON-NLS-1$
}
else if (modified.equalsIgnoreCase("BEGIN")) { //$NON-NLS-1$
- try {
- this.connection.setAutoCommit(false);
- modified = "SELECT 'BEGIN'"; //$NON-NLS-1$
- } catch (SQLException e) {
- this.client.errorOccurred(e);
- }
+ modified = "START TRANSACTION"; //$NON-NLS-1$
}
- else if (modified.equalsIgnoreCase("COMMIT")) { //$NON-NLS-1$
- try {
- this.connection.setAutoCommit(true);
- modified = "SELECT 'COMMIT'"; //$NON-NLS-1$
- } catch (SQLException e) {
- this.client.errorOccurred(e);
- }
- }
else if ((m = rollbackPattern.matcher(modified)).matches()) {
- try {
- this.connection.rollback(false);
- modified = "SELECT 'ROLLBACK'"; //$NON-NLS-1$
- } catch (SQLException e) {
- this.client.errorOccurred(e);
- }
+ modified = "ROLLBACK"; //$NON-NLS-1$
}
else if ((m = savepointPattern.matcher(modified)).matches()) {
modified = "SELECT 'SAVEPOINT'"; //$NON-NLS-1$
@@ -428,18 +416,20 @@
try {
ScriptReader reader = new ScriptReader(new StringReader(query));
- String s = fixSQL(reader.readStatement());
+ String sql = reader.readStatement();
+ String s = fixSQL(sql);
while (s != null) {
Statement stmt = null;
try {
stmt = this.connection.createStatement();
boolean result = stmt.execute(s);
if (result) {
- this.client.sendResults(s, stmt.getResultSet(), true);
+ this.client.sendResults(sql, stmt.getResultSet(), true);
} else {
- this.client.sendUpdateCount(s, stmt.getUpdateCount());
+ this.client.sendUpdateCount(sql, stmt.getUpdateCount());
}
- s = fixSQL(reader.readStatement());
+ sql = reader.readStatement();
+ s = fixSQL(sql);
} catch (SQLException e) {
this.client.errorOccurred(e);
break;
@@ -490,7 +480,7 @@
}
else {
try {
- this.client.sendResultSetDescription(query.stmt.getMetaData());
+ this.client.sendResultSetDescription(query.stmt.getMetaData(), query.stmt);
} catch (SQLException e) {
this.client.errorOccurred(e);
}
Modified: branches/7.1.x/runtime/src/main/java/org/teiid/transport/PgBackendProtocol.java
===================================================================
--- branches/7.1.x/runtime/src/main/java/org/teiid/transport/PgBackendProtocol.java 2011-03-29 16:29:51 UTC (rev 3048)
+++ branches/7.1.x/runtime/src/main/java/org/teiid/transport/PgBackendProtocol.java 2011-03-29 21:52:50 UTC (rev 3049)
@@ -28,9 +28,11 @@
import java.lang.reflect.Method;
import java.nio.charset.Charset;
import java.sql.ParameterMetaData;
+import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
+import java.sql.Statement;
import java.sql.Types;
import java.util.Properties;
@@ -226,10 +228,10 @@
}
@Override
- public void sendResultSetDescription(ResultSetMetaData metaData) {
+ public void sendResultSetDescription(ResultSetMetaData metaData, Statement stmt) {
try {
try {
- sendRowDescription(metaData);
+ sendRowDescription(metaData, stmt);
} catch (SQLException e) {
sendErrorResponse(e);
}
@@ -244,7 +246,7 @@
try {
if (describeRows) {
ResultSetMetaData meta = rs.getMetaData();
- sendRowDescription(meta);
+ sendRowDescription(meta, rs.getStatement());
}
while (rs.next()) {
sendDataRow(rs);
@@ -325,6 +327,10 @@
tag = "SELECT";
} else if (sql.startsWith("BEGIN")) {
tag = "BEGIN";
+ } else if (sql.startsWith("COMMIT")) {
+ tag = "COMMIT";
+ } else if (sql.startsWith("ROLLBACK")) {
+ tag = "ROLLBACK";
} else {
trace("Check command tag: " + sql);
tag = "UPDATE " + updateCount;
@@ -375,33 +381,49 @@
sendMessage();
}
- private void sendRowDescription(ResultSetMetaData meta) throws SQLException, IOException {
+ private void sendRowDescription(ResultSetMetaData meta, Statement stmt) throws SQLException, IOException {
if (meta == null) {
sendNoData();
} else {
int columns = meta.getColumnCount();
- int[] types = new int[columns];
- int[] precision = new int[columns];
- String[] names = new String[columns];
- for (int i = 0; i < columns; i++) {
- names[i] = meta.getColumnName(i + 1);
- int type = meta.getColumnType(i + 1);
- type = convertType(type);
- precision[i] = meta.getColumnDisplaySize(i + 1);
- types[i] = type;
- }
startMessage('T');
writeShort(columns);
- for (int i = 0; i < columns; i++) {
- writeString(names[i].toLowerCase());
- // object ID
- writeInt(0);
+ for (int i = 1; i < columns + 1; i++) {
+ writeString(meta.getColumnName(i).toLowerCase());
+ int type = meta.getColumnType(i);
+ type = convertType(type);
+ int precision = meta.getColumnDisplaySize(i);
+ String name = meta.getColumnName(i);
+ String table = meta.getTableName(i);
+ String schema = meta.getSchemaName(i);
+ int reloid = 0;
+ short attnum = 0;
+ if (schema != null) {
+ PreparedStatement ps = null;
+ try {
+ ps = stmt.getConnection().prepareStatement("select attrelid, attnum from matpg_relatt where attname = ? and relname = ? and nspname = ?");
+ ps.setString(1, name);
+ ps.setString(2, table);
+ ps.setString(3, schema);
+ ResultSet rs = ps.executeQuery();
+ if (rs.next()) {
+ reloid = rs.getInt(1);
+ attnum = rs.getShort(2);
+ }
+ } finally {
+ if (ps != null) {
+ ps.close();
+ }
+ }
+ }
+ // rel ID
+ writeInt(reloid);
// attribute number of the column
- writeShort(0);
+ writeShort(attnum);
// data type
- writeInt(types[i]);
+ writeInt(type);
// pg_type.typlen
- writeShort(getTypeSize(types[i], precision[i]));
+ writeShort(getTypeSize(type, precision));
// pg_attribute.atttypmod
writeInt(-1);
// text
Modified: branches/7.1.x/test-integration/common/src/test/java/org/teiid/jdbc/TestVDBMerge.java
===================================================================
--- branches/7.1.x/test-integration/common/src/test/java/org/teiid/jdbc/TestVDBMerge.java 2011-03-29 16:29:51 UTC (rev 3048)
+++ branches/7.1.x/test-integration/common/src/test/java/org/teiid/jdbc/TestVDBMerge.java 2011-03-29 21:52:50 UTC (rev 3049)
@@ -19,11 +19,11 @@
String[] expected = {
"VDBName[string] SchemaName[string] Name[string] Type[string] NameInSource[string] IsPhysical[boolean] SupportsUpdates[boolean] UID[string] Cardinality[integer] Description[string] IsSystem[boolean] IsMaterialized[boolean] OID[integer]",
- "PartsSupplier PartsSupplier PARTSSUPPLIER.PARTS Table PARTS true true mmuuid:f6276601-73fe-1edc-a81c-ecf397b10590 16 null false false 0",
- "PartsSupplier PartsSupplier PARTSSUPPLIER.SHIP_VIA Table SHIP_VIA true true mmuuid:0f4e9b80-73ff-1edc-a81c-ecf397b10590 4 null false false 1",
- "PartsSupplier PartsSupplier PARTSSUPPLIER.STATUS Table STATUS true true mmuuid:1f297200-73ff-1edc-a81c-ecf397b10590 3 null false false 2",
- "PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS Table SUPPLIER_PARTS true true mmuuid:3deafb00-73ff-1edc-a81c-ecf397b10590 227 null false false 3",
- "PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER Table SUPPLIER true true mmuuid:2c371ec0-73ff-1edc-a81c-ecf397b10590 16 null false false 4"
+ "PartsSupplier PartsSupplier PARTSSUPPLIER.PARTS Table PARTS true true mmuuid:f6276601-73fe-1edc-a81c-ecf397b10590 16 null false false 1",
+ "PartsSupplier PartsSupplier PARTSSUPPLIER.SHIP_VIA Table SHIP_VIA true true mmuuid:0f4e9b80-73ff-1edc-a81c-ecf397b10590 4 null false false 2",
+ "PartsSupplier PartsSupplier PARTSSUPPLIER.STATUS Table STATUS true true mmuuid:1f297200-73ff-1edc-a81c-ecf397b10590 3 null false false 3",
+ "PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER_PARTS Table SUPPLIER_PARTS true true mmuuid:3deafb00-73ff-1edc-a81c-ecf397b10590 227 null false false 4",
+ "PartsSupplier PartsSupplier PARTSSUPPLIER.SUPPLIER Table SUPPLIER true true mmuuid:2c371ec0-73ff-1edc-a81c-ecf397b10590 16 null false false 5"
};
executeTest("select * from tables where schemaname ='PartsSupplier'", expected); //$NON-NLS-1$
@@ -32,14 +32,14 @@
};
String[] expectedAfter = {
"VDBName[string] SchemaName[string] Name[string] Type[string] NameInSource[string] IsPhysical[boolean] SupportsUpdates[boolean] UID[string] Cardinality[integer] Description[string] IsSystem[boolean] IsMaterialized[boolean] OID[integer]",
- "PartsSupplier BQT1 HugeA Table null true false mmuuid:7c66fc80-33d2-1dfa-9931-e83d04ce10a0 500000 null false false 5",
- "PartsSupplier BQT1 HugeB Table null true false mmuuid:b0369400-33f8-1dfa-9931-e83d04ce10a0 500000 null false false 6",
- "PartsSupplier BQT1 LargeA Table null true false mmuuid:3976a800-33b2-1dfa-9931-e83d04ce10a0 10000 null false false 7",
- "PartsSupplier BQT1 LargeB Table null true false mmuuid:5fb40600-33c3-1dfa-9931-e83d04ce10a0 10000 null false false 8",
- "PartsSupplier BQT1 MediumA Table null true false mmuuid:61074980-338d-1dfa-9931-e83d04ce10a0 1000 null false false 9",
- "PartsSupplier BQT1 MediumB Table null true false mmuuid:e24bd1c0-33a4-1dfa-9931-e83d04ce10a0 1000 null false false 10",
- "PartsSupplier BQT1 SmallA Table null true false mmuuid:0968424f-e6a0-1df9-ac06-b890ff96f710 50 null false false 11",
- "PartsSupplier BQT1 SmallB Table null true false mmuuid:06fb8980-3377-1dfa-9931-e83d04ce10a0 50 null false false 12"
+ "PartsSupplier BQT1 HugeA Table null true false mmuuid:7c66fc80-33d2-1dfa-9931-e83d04ce10a0 500000 null false false 6",
+ "PartsSupplier BQT1 HugeB Table null true false mmuuid:b0369400-33f8-1dfa-9931-e83d04ce10a0 500000 null false false 7",
+ "PartsSupplier BQT1 LargeA Table null true false mmuuid:3976a800-33b2-1dfa-9931-e83d04ce10a0 10000 null false false 8",
+ "PartsSupplier BQT1 LargeB Table null true false mmuuid:5fb40600-33c3-1dfa-9931-e83d04ce10a0 10000 null false false 9",
+ "PartsSupplier BQT1 MediumA Table null true false mmuuid:61074980-338d-1dfa-9931-e83d04ce10a0 1000 null false false 10",
+ "PartsSupplier BQT1 MediumB Table null true false mmuuid:e24bd1c0-33a4-1dfa-9931-e83d04ce10a0 1000 null false false 11",
+ "PartsSupplier BQT1 SmallA Table null true false mmuuid:0968424f-e6a0-1df9-ac06-b890ff96f710 50 null false false 12",
+ "PartsSupplier BQT1 SmallB Table null true false mmuuid:06fb8980-3377-1dfa-9931-e83d04ce10a0 50 null false false 13"
};
executeTest("select * from tables where schemaname='BQT1'", expectedBefore); //$NON-NLS-1$
@@ -94,14 +94,14 @@
String[] expectedAfter = {
"VDBName[string] SchemaName[string] Name[string] Type[string] NameInSource[string] IsPhysical[boolean] SupportsUpdates[boolean] UID[string] Cardinality[integer] Description[string] IsSystem[boolean] IsMaterialized[boolean] OID[integer]",
- "empty BQT1 HugeA Table null true false mmuuid:7c66fc80-33d2-1dfa-9931-e83d04ce10a0 500000 null false false 0",
- "empty BQT1 HugeB Table null true false mmuuid:b0369400-33f8-1dfa-9931-e83d04ce10a0 500000 null false false 1",
- "empty BQT1 LargeA Table null true false mmuuid:3976a800-33b2-1dfa-9931-e83d04ce10a0 10000 null false false 2",
- "empty BQT1 LargeB Table null true false mmuuid:5fb40600-33c3-1dfa-9931-e83d04ce10a0 10000 null false false 3",
- "empty BQT1 MediumA Table null true false mmuuid:61074980-338d-1dfa-9931-e83d04ce10a0 1000 null false false 4",
- "empty BQT1 MediumB Table null true false mmuuid:e24bd1c0-33a4-1dfa-9931-e83d04ce10a0 1000 null false false 5",
- "empty BQT1 SmallA Table null true false mmuuid:0968424f-e6a0-1df9-ac06-b890ff96f710 50 null false false 6",
- "empty BQT1 SmallB Table null true false mmuuid:06fb8980-3377-1dfa-9931-e83d04ce10a0 50 null false false 7"
+ "empty BQT1 HugeA Table null true false mmuuid:7c66fc80-33d2-1dfa-9931-e83d04ce10a0 500000 null false false 1",
+ "empty BQT1 HugeB Table null true false mmuuid:b0369400-33f8-1dfa-9931-e83d04ce10a0 500000 null false false 2",
+ "empty BQT1 LargeA Table null true false mmuuid:3976a800-33b2-1dfa-9931-e83d04ce10a0 10000 null false false 3",
+ "empty BQT1 LargeB Table null true false mmuuid:5fb40600-33c3-1dfa-9931-e83d04ce10a0 10000 null false false 4",
+ "empty BQT1 MediumA Table null true false mmuuid:61074980-338d-1dfa-9931-e83d04ce10a0 1000 null false false 5",
+ "empty BQT1 MediumB Table null true false mmuuid:e24bd1c0-33a4-1dfa-9931-e83d04ce10a0 1000 null false false 6",
+ "empty BQT1 SmallA Table null true false mmuuid:0968424f-e6a0-1df9-ac06-b890ff96f710 50 null false false 7",
+ "empty BQT1 SmallB Table null true false mmuuid:06fb8980-3377-1dfa-9931-e83d04ce10a0 50 null false false 8"
};
this.internalConnection = server.createConnection("jdbc:teiid:empty");
Modified: branches/7.1.x/test-integration/common/src/test/java/org/teiid/systemmodel/TestResultSetMetadata.java
===================================================================
--- branches/7.1.x/test-integration/common/src/test/java/org/teiid/systemmodel/TestResultSetMetadata.java 2011-03-29 16:29:51 UTC (rev 3048)
+++ branches/7.1.x/test-integration/common/src/test/java/org/teiid/systemmodel/TestResultSetMetadata.java 2011-03-29 21:52:50 UTC (rev 3049)
@@ -99,7 +99,7 @@
String[] expected = {
"ColumnName ColumnType ColumnTypeName ColumnClassName isNullable TableName SchemaName CatalogName", //$NON-NLS-1$
"count 4 integer java.lang.Integer 1 null null PartsSupplier", //$NON-NLS-1$
- "part_name 12 string java.lang.String 1 PARTSSUPPLIER.PARTS PartsSupplier PartsSupplier" //$NON-NLS-1$
+ "PART_NAME 12 string java.lang.String 1 PARTSSUPPLIER.PARTS PartsSupplier PartsSupplier" //$NON-NLS-1$
};
executeTest("select count(*), part_name from parts where 1=0 group by part_name", expected); //$NON-NLS-1$
}
@@ -127,7 +127,7 @@
String[] expected = {
"ColumnName ColumnType ColumnTypeName ColumnClassName isNullable TableName SchemaName CatalogName", //$NON-NLS-1$
"count 4 integer java.lang.Integer 1 null null PartsSupplier", //$NON-NLS-1$
- "part_name 12 string java.lang.String 1 PARTSSUPPLIER.PARTS PartsSupplier PartsSupplier" //$NON-NLS-1$
+ "PART_NAME 12 string java.lang.String 1 PARTSSUPPLIER.PARTS PartsSupplier PartsSupplier" //$NON-NLS-1$
};
executePreparedTest("select count(*), part_name from parts where 1=0 group by part_name", expected); //$NON-NLS-1$
}
Modified: branches/7.1.x/test-integration/common/src/test/java/org/teiid/systemmodel/TestSystemVirtualModel.java
===================================================================
--- branches/7.1.x/test-integration/common/src/test/java/org/teiid/systemmodel/TestSystemVirtualModel.java 2011-03-29 16:29:51 UTC (rev 3048)
+++ branches/7.1.x/test-integration/common/src/test/java/org/teiid/systemmodel/TestSystemVirtualModel.java 2011-03-29 21:52:50 UTC (rev 3049)
@@ -130,6 +130,11 @@
"PK_SUPPLIER null", //$NON-NLS-1$
"PK_SUPPLIER_PARTS null", //$NON-NLS-1$
"PK_SUPPLIER_PARTS null", //$NON-NLS-1$
+ "idx_matpg_relatt_ids null",//$NON-NLS-1$
+ "idx_matpg_relatt_ids null",//$NON-NLS-1$
+ "pk_matpg_relatt_names null",//$NON-NLS-1$
+ "pk_matpg_relatt_names null",//$NON-NLS-1$
+ "pk_matpg_relatt_names null",//$NON-NLS-1$
"pk_pg_attr null", //$NON-NLS-1$
"pk_pg_class null", //$NON-NLS-1$
"pk_pg_index null", //$NON-NLS-1$
Modified: branches/7.1.x/test-integration/common/src/test/resources/TestCase3473/testGetPrimaryKeys.expected
===================================================================
--- branches/7.1.x/test-integration/common/src/test/resources/TestCase3473/testGetPrimaryKeys.expected 2011-03-29 16:29:51 UTC (rev 3048)
+++ branches/7.1.x/test-integration/common/src/test/resources/TestCase3473/testGetPrimaryKeys.expected 2011-03-29 21:52:50 UTC (rev 3049)
@@ -1,31 +1,31 @@
string string string string short string
-TABLE_CAT TABLE_SCHEM TABLE_NAME COLUMN_NAME KEY_SEQ PK_NAME
+VDBName SchemaName TableName Name KEY_SEQ KeyName
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
-TABLE_CAT 12 test java.lang.String TABLE_CAT string SYS KeyColumns 255 255 0 false false false false 0 true true false false
-TABLE_SCHEM 12 test java.lang.String TABLE_SCHEM string SYS KeyColumns 255 255 0 false true false true 1 false true true true
-TABLE_NAME 12 test java.lang.String TABLE_NAME string SYS KeyColumns 2048 2048 0 false true false false 0 true true false false
-COLUMN_NAME 12 test java.lang.String COLUMN_NAME string SYS KeyColumns 255 255 0 false false false false 0 true true false false
+VDBName 12 test java.lang.String TABLE_CAT string SYS KeyColumns 255 255 0 false false false false 0 true true false false
+SchemaName 12 test java.lang.String TABLE_SCHEM string SYS KeyColumns 255 255 0 false true false true 1 false true true true
+TableName 12 test java.lang.String TABLE_NAME string SYS KeyColumns 2048 2048 0 false true false false 0 true true false false
+Name 12 test java.lang.String COLUMN_NAME string SYS KeyColumns 255 255 0 false false false false 0 true true false false
KEY_SEQ 5 test java.lang.Short KEY_SEQ short <null> <null> 6 5 0 false false false true 1 false true true true
-PK_NAME 12 test java.lang.String PK_NAME string SYS KeyColumns 255 255 0 false false false false 1 true true false false
+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
-TABLE_CAT TABLE_SCHEM TABLE_NAME COLUMN_NAME KEY_SEQ PK_NAME
+VDBName SchemaName TableName Name KEY_SEQ KeyName
Row Count : 0
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
-TABLE_CAT 12 test java.lang.String TABLE_CAT string SYS KeyColumns 255 255 0 false false false false 0 true true false false
-TABLE_SCHEM 12 test java.lang.String TABLE_SCHEM string SYS KeyColumns 255 255 0 false true false true 1 false true true true
-TABLE_NAME 12 test java.lang.String TABLE_NAME string SYS KeyColumns 2048 2048 0 false true false false 0 true true false false
-COLUMN_NAME 12 test java.lang.String COLUMN_NAME string SYS KeyColumns 255 255 0 false false false false 0 true true false false
+VDBName 12 test java.lang.String TABLE_CAT string SYS KeyColumns 255 255 0 false false false false 0 true true false false
+SchemaName 12 test java.lang.String TABLE_SCHEM string SYS KeyColumns 255 255 0 false true false true 1 false true true true
+TableName 12 test java.lang.String TABLE_NAME string SYS KeyColumns 2048 2048 0 false true false false 0 true true false false
+Name 12 test java.lang.String COLUMN_NAME string SYS KeyColumns 255 255 0 false false false false 0 true true false false
KEY_SEQ 5 test java.lang.Short KEY_SEQ short <null> <null> 6 5 0 false false false true 1 false true true true
-PK_NAME 12 test java.lang.String PK_NAME string SYS KeyColumns 255 255 0 false false false false 1 true true false false
+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
-TABLE_CAT TABLE_SCHEM TABLE_NAME COLUMN_NAME KEY_SEQ PK_NAME
+VDBName SchemaName TableName Name KEY_SEQ KeyName
Row Count : 0
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
-TABLE_CAT 12 test java.lang.String TABLE_CAT string SYS KeyColumns 255 255 0 false false false false 0 true true false false
-TABLE_SCHEM 12 test java.lang.String TABLE_SCHEM string SYS KeyColumns 255 255 0 false true false true 1 false true true true
-TABLE_NAME 12 test java.lang.String TABLE_NAME string SYS KeyColumns 2048 2048 0 false true false false 0 true true false false
-COLUMN_NAME 12 test java.lang.String COLUMN_NAME string SYS KeyColumns 255 255 0 false false false false 0 true true false false
+VDBName 12 test java.lang.String TABLE_CAT string SYS KeyColumns 255 255 0 false false false false 0 true true false false
+SchemaName 12 test java.lang.String TABLE_SCHEM string SYS KeyColumns 255 255 0 false true false true 1 false true true true
+TableName 12 test java.lang.String TABLE_NAME string SYS KeyColumns 2048 2048 0 false true false false 0 true true false false
+Name 12 test java.lang.String COLUMN_NAME string SYS KeyColumns 255 255 0 false false false false 0 true true false false
KEY_SEQ 5 test java.lang.Short KEY_SEQ short <null> <null> 6 5 0 false false false true 1 false true true true
-PK_NAME 12 test java.lang.String PK_NAME string SYS KeyColumns 255 255 0 false false false false 1 true true false false
+KeyName 12 test java.lang.String PK_NAME string SYS KeyColumns 255 255 0 false false false false 1 true true false false
Modified: branches/7.1.x/test-integration/common/src/test/resources/TestCase3473/testGetTables.expected
===================================================================
--- branches/7.1.x/test-integration/common/src/test/resources/TestCase3473/testGetTables.expected 2011-03-29 16:29:51 UTC (rev 3048)
+++ branches/7.1.x/test-integration/common/src/test/resources/TestCase3473/testGetTables.expected 2011-03-29 21:52:50 UTC (rev 3049)
@@ -1,5 +1,5 @@
string string string string string string string string string string boolean
-TABLE_CAT TABLE_SCHEM TABLE_NAME TABLE_TYPE REMARKS TYPE_CAT TYPE_SCHEM TYPE_NAME SELF_REFERENCING_COL_NAME REF_GENERATION ISPHYSICAL
+VDBName SchemaName Name TABLE_TYPE Description 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
@@ -13,6 +13,7 @@
test SYS VirtualDatabases SYSTEM TABLE <null> <null> <null> <null> <null> <null> true
test SYSADMIN MatViews SYSTEM TABLE <null> <null> <null> <null> <null> <null> true
test SYSADMIN VDBResources SYSTEM TABLE <null> <null> <null> <null> <null> <null> true
+test pg_catalog matpg_relatt SYSTEM TABLE <null> <null> <null> <null> <null> <null> false
test pg_catalog pg_am SYSTEM TABLE <null> <null> <null> <null> <null> <null> false
test pg_catalog pg_attrdef SYSTEM TABLE <null> <null> <null> <null> <null> <null> false
test pg_catalog pg_attribute SYSTEM TABLE <null> <null> <null> <null> <null> <null> false
@@ -27,46 +28,46 @@
test test all_databases TABLE <null> <null> <null> <null> <null> <null> false
test test all_models TABLE <null> <null> <null> <null> <null> <null> false
test test all_tables TABLE <null> <null> <null> <null> <null> <null> false
-Row Count : 27
+Row Count : 28
getColumnName getColumnType getCatalogName getColumnClassName getColumnLabel getColumnTypeName getSchemaName getTableName getColumnDisplaySize getPrecision getScale isAutoIncrement isCaseSensitive isCurrency isDefinitelyWritable isNullable isReadOnly isSearchable isSigned isWritable
-TABLE_CAT 12 test java.lang.String TABLE_CAT string SYS Tables 255 255 0 false true false true 1 false true true true
-TABLE_SCHEM 12 test java.lang.String TABLE_SCHEM string SYS Tables 255 255 0 false true false true 1 false true true true
-TABLE_NAME 12 test java.lang.String TABLE_NAME string SYS Tables 255 255 0 false true false false 0 true true false false
+VDBName 12 test java.lang.String TABLE_CAT string SYS Tables 255 255 0 false true false true 1 false true true true
+SchemaName 12 test java.lang.String TABLE_SCHEM string SYS Tables 255 255 0 false true false true 1 false true true true
+Name 12 test java.lang.String TABLE_NAME string SYS Tables 255 255 0 false true false false 0 true true false false
TABLE_TYPE 12 test java.lang.String TABLE_TYPE string <null> <null> 4000 4000 0 false false false true 1 false true true true
-REMARKS 12 test java.lang.String REMARKS string SYS Tables 255 255 0 false true false true 1 false true true true
+Description 12 test java.lang.String REMARKS string SYS Tables 255 255 0 false true false true 1 false true true true
TYPE_CAT 12 test java.lang.String TYPE_CAT string <null> <null> 4000 4000 0 false false false true 1 false true true true
TYPE_SCHEM 12 test java.lang.String TYPE_SCHEM string <null> <null> 4000 4000 0 false false false true 1 false true true true
TYPE_NAME 12 test java.lang.String TYPE_NAME string <null> <null> 4000 4000 0 false false false true 1 false true true true
SELF_REFERENCING_COL_NAME 12 test java.lang.String SELF_REFERENCING_COL_NAME string <null> <null> 4000 4000 0 false false false true 1 false true true true
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
+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
-TABLE_CAT TABLE_SCHEM TABLE_NAME TABLE_TYPE REMARKS TYPE_CAT TYPE_SCHEM TYPE_NAME SELF_REFERENCING_COL_NAME REF_GENERATION ISPHYSICAL
+VDBName SchemaName Name TABLE_TYPE Description 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
-TABLE_CAT 12 test java.lang.String TABLE_CAT string SYS Tables 255 255 0 false true false true 1 false true true true
-TABLE_SCHEM 12 test java.lang.String TABLE_SCHEM string SYS Tables 255 255 0 false true false true 1 false true true true
-TABLE_NAME 12 test java.lang.String TABLE_NAME string SYS Tables 255 255 0 false true false false 0 true true false false
+VDBName 12 test java.lang.String TABLE_CAT string SYS Tables 255 255 0 false true false true 1 false true true true
+SchemaName 12 test java.lang.String TABLE_SCHEM string SYS Tables 255 255 0 false true false true 1 false true true true
+Name 12 test java.lang.String TABLE_NAME string SYS Tables 255 255 0 false true false false 0 true true false false
TABLE_TYPE 12 test java.lang.String TABLE_TYPE string <null> <null> 4000 4000 0 false false false true 1 false true true true
-REMARKS 12 test java.lang.String REMARKS string SYS Tables 255 255 0 false true false true 1 false true true true
+Description 12 test java.lang.String REMARKS string SYS Tables 255 255 0 false true false true 1 false true true true
TYPE_CAT 12 test java.lang.String TYPE_CAT string <null> <null> 4000 4000 0 false false false true 1 false true true true
TYPE_SCHEM 12 test java.lang.String TYPE_SCHEM string <null> <null> 4000 4000 0 false false false true 1 false true true true
TYPE_NAME 12 test java.lang.String TYPE_NAME string <null> <null> 4000 4000 0 false false false true 1 false true true true
SELF_REFERENCING_COL_NAME 12 test java.lang.String SELF_REFERENCING_COL_NAME string <null> <null> 4000 4000 0 false false false true 1 false true true true
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
+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
-TABLE_CAT TABLE_SCHEM TABLE_NAME TABLE_TYPE REMARKS TYPE_CAT TYPE_SCHEM TYPE_NAME SELF_REFERENCING_COL_NAME REF_GENERATION ISPHYSICAL
+VDBName SchemaName Name TABLE_TYPE Description 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
-TABLE_CAT 12 test java.lang.String TABLE_CAT string SYS Tables 255 255 0 false true false true 1 false true true true
-TABLE_SCHEM 12 test java.lang.String TABLE_SCHEM string SYS Tables 255 255 0 false true false true 1 false true true true
-TABLE_NAME 12 test java.lang.String TABLE_NAME string SYS Tables 255 255 0 false true false false 0 true true false false
+VDBName 12 test java.lang.String TABLE_CAT string SYS Tables 255 255 0 false true false true 1 false true true true
+SchemaName 12 test java.lang.String TABLE_SCHEM string SYS Tables 255 255 0 false true false true 1 false true true true
+Name 12 test java.lang.String TABLE_NAME string SYS Tables 255 255 0 false true false false 0 true true false false
TABLE_TYPE 12 test java.lang.String TABLE_TYPE string <null> <null> 4000 4000 0 false false false true 1 false true true true
-REMARKS 12 test java.lang.String REMARKS string SYS Tables 255 255 0 false true false true 1 false true true true
+Description 12 test java.lang.String REMARKS string SYS Tables 255 255 0 false true false true 1 false true true true
TYPE_CAT 12 test java.lang.String TYPE_CAT string <null> <null> 4000 4000 0 false false false true 1 false true true true
TYPE_SCHEM 12 test java.lang.String TYPE_SCHEM string <null> <null> 4000 4000 0 false false false true 1 false true true true
TYPE_NAME 12 test java.lang.String TYPE_NAME string <null> <null> 4000 4000 0 false false false true 1 false true true true
SELF_REFERENCING_COL_NAME 12 test java.lang.String SELF_REFERENCING_COL_NAME string <null> <null> 4000 4000 0 false false false true 1 false true true true
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
+IsPhysical -7 test java.lang.Boolean ISPHYSICAL boolean SYS Tables 5 1 0 false true false false 0 true true false false
Modified: branches/7.1.x/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetColumns.expected
===================================================================
--- branches/7.1.x/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetColumns.expected 2011-03-29 16:29:51 UTC (rev 3048)
+++ branches/7.1.x/test-integration/common/src/test/resources/TestMMDatabaseMetaData/testGetColumns.expected 2011-03-29 21:52:50 UTC (rev 3049)
@@ -1,1095 +1,1101 @@
-string string string string short 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_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 NO <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 NO <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 NO <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 NO <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 NO <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 NO <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 NO <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 NO <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 NO <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 NO <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 NO <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 NO <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 NO <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 NO <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 NO <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 NO <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 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest.SingleRow 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS XQTDoc BQTDocTestDocument BQTDocTest 12 string 4000 <null> 0 0 1 <null> <null> <null> <null> 0 0 NO <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 NO <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 NO <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 NO <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 NO <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 NO <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 NO <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 NO <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 NO <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 NO <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 NO <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 NO <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 NO <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 NO <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 NO <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 NO <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 NO <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 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Agg1 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Agg2 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Agg3 count 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 1 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Agg4 min 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Agg4 sum -5 long 19 <null> 0 10 0 <null> <null> <null> <null> 1 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Agg4 avg 8 double 20 <null> 0 10 0 <null> <null> <null> <null> 1 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Expr1 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Expr1 expr 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Expr2 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Expr2 E 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Expr3 expr 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Expr4 E 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Expr5 E 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Expr6 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Expr6 expr 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Expr7 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Expr7 E 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 IntKey 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping1 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 IntKey 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping2 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping3 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Mapping4 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order1 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order2 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order3 E 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order4 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Base.Order5 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns VDBName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns SchemaName 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns TableName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns Position 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns NameInSource 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns DataType 12 string 100 <null> 0 10 0 <null> <null> <null> <null> 100 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns Scale 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns Length 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns IsLengthFixed -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns SupportsSelect -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns SupportsUpdates -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns IsCaseSensitive -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns IsSigned -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns IsCurrency -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns IsAutoIncremented -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns NullType 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 17 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns MinRange 12 string 50 <null> 0 10 1 <null> <null> <null> <null> 50 18 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns MaxRange 12 string 50 <null> 0 10 1 <null> <null> <null> <null> 50 19 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns SearchType 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 20 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns Format 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 21 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns DefaultValue 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 22 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns JavaClass 12 string 500 <null> 0 10 0 <null> <null> <null> <null> 500 23 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns Precision 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 24 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns CharOctetLength 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 25 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns Radix 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 26 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 27 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns Description 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 28 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Columns OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 29 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes Name 12 string 100 <null> 0 10 0 <null> <null> <null> <null> 100 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes IsStandard -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes IsPhysical -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes TypeName 12 string 100 <null> 0 10 0 <null> <null> <null> <null> 100 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes JavaClass 12 string 500 <null> 0 10 0 <null> <null> <null> <null> 500 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes Scale 4 integer 10 <null> 0 10 1 <null> (0) <null> <null> 10 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes TypeLength 4 integer 10 <null> 0 10 0 <null> (0) <null> <null> 10 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes NullType 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes IsSigned -7 boolean 1 <null> 0 10 0 <null> ('0') <null> <null> 1 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes IsAutoIncremented -7 boolean 1 <null> 0 10 0 <null> ('0') <null> <null> 1 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes IsCaseSensitive -7 boolean 1 <null> 0 10 0 <null> ('0') <null> <null> 1 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes Precision 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes Radix 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes SearchType 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 14 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 15 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes RuntimeType 12 string 64 <null> 0 10 1 <null> <null> <null> <null> 64 16 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes BaseType 12 string 64 <null> 0 10 1 <null> <null> <null> <null> 64 17 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes Description 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 18 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS DataTypes OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 19 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeA ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeA ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 HugeB ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 HugeB ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS KeyColumns VDBName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS KeyColumns SchemaName 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS KeyColumns TableName 12 string 2048 <null> 0 10 0 <null> <null> <null> <null> 2048 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS KeyColumns Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS KeyColumns KeyName 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS KeyColumns KeyType 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS KeyColumns RefKeyUID 12 string 50 <null> 0 10 1 <null> <null> <null> <null> 50 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS KeyColumns UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS KeyColumns Position 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS KeyColumns OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Keys VDBName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Keys SchemaName 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Keys TableName 12 string 2048 <null> 0 10 0 <null> <null> <null> <null> 2048 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Keys Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Keys Description 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Keys NameInSource 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Keys Type 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Keys IsIndexed -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Keys RefKeyUID 12 string 50 <null> 0 10 1 <null> <null> <null> <null> 50 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Keys UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Keys OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeA ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeA ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 LargeB ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 LargeB ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYSADMIN MatViews VDBName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYSADMIN MatViews SchemaName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYSADMIN MatViews Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYSADMIN MatViews TargetSchemaName 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYSADMIN MatViews TargetName 12 string 4000 <null> 0 10 1 <null> <null> <null> <null> 4000 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYSADMIN MatViews Valid -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 0 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYSADMIN MatViews LoadState 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYSADMIN MatViews Updated 93 timestamp 29 <null> 0 10 1 <null> <null> <null> <null> 0 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYSADMIN MatViews Cardinality 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumA ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumA ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 MediumB ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 MediumB ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ProcedureParams VDBName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ProcedureParams SchemaName 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ProcedureParams ProcedureName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ProcedureParams Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ProcedureParams DataType 12 string 25 <null> 0 10 0 <null> <null> <null> <null> 25 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ProcedureParams Position 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ProcedureParams Type 12 string 100 <null> 0 10 0 <null> <null> <null> <null> 100 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ProcedureParams Optional -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ProcedureParams Precision 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ProcedureParams TypeLength 4 integer 10 <null> 0 10 0 <null> (0) <null> <null> 10 10 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ProcedureParams Scale 4 integer 10 <null> 0 10 0 <null> (0) <null> <null> 10 11 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ProcedureParams Radix 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ProcedureParams NullType 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ProcedureParams UID 12 string 50 <null> 0 10 1 <null> <null> <null> <null> 50 14 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ProcedureParams Description 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 15 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ProcedureParams OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 16 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Procedures VDBName 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Procedures SchemaName 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Procedures Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Procedures NameInSource 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Procedures ReturnsResults -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 5 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Procedures UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Procedures Description 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Procedures OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Properties Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Properties Value 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Properties UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Properties OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 4 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 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ReferenceKeyColumns PKTABLE_SCHEM 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ReferenceKeyColumns PKTABLE_NAME 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ReferenceKeyColumns PKCOLUMN_NAME 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ReferenceKeyColumns FKTABLE_CAT 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ReferenceKeyColumns FKTABLE_SCHEM 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ReferenceKeyColumns FKTABLE_NAME 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ReferenceKeyColumns FKCOLUMN_NAME 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ReferenceKeyColumns KEY_SEQ 5 short 5 <null> 0 10 1 <null> <null> <null> <null> 5 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ReferenceKeyColumns UPDATE_RULE 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ReferenceKeyColumns DELETE_RULE 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ReferenceKeyColumns FK_NAME 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ReferenceKeyColumns PK_NAME 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS ReferenceKeyColumns DEFERRABILITY 4 integer 10 <null> 0 10 1 <null> <null> <null> <null> 10 14 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Schemas VDBName 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Schemas Name 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Schemas IsPhysical -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Schemas UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Schemas Description 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Schemas PrimaryMetamodelURI 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Schemas OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallA ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallA ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT1 SmallB ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS BQT2 SmallB ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Tables VDBName 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Tables SchemaName 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Tables Name 12 string 255 <null> 0 10 0 <null> <null> <null> <null> 255 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Tables Type 12 string 20 <null> 0 10 0 <null> <null> <null> <null> 20 4 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Tables NameInSource 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Tables IsPhysical -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 6 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Tables SupportsUpdates -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 1 7 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Tables UID 12 string 50 <null> 0 10 0 <null> <null> <null> <null> 50 8 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Tables Cardinality 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 9 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Tables Description 12 string 255 <null> 0 10 1 <null> <null> <null> <null> 255 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Tables IsSystem -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Tables IsMaterialized -7 boolean 1 <null> 0 10 0 <null> <null> <null> <null> 0 12 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS SYS Tables OID 4 integer 10 <null> 0 10 0 <null> <null> <null> <null> 10 13 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U1 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U10 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U11 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U11 StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U2 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U3 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U4 A 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U4 B 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U4 C 7 float 20 <null> 0 10 0 <null> <null> <null> <null> 126 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U5 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 1 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U5 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 2 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U5 Source 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 3 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U6 StringCol 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U6 IntCol 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null> <null> <null> <null> 126 16 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U7 ObjectValue 2000 object 2048 <null> 0 10 1 <null> <null> <null> <null> 2048 17 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 IntKey 4 integer 22 <null> 0 10 0 <null> <null> <null> <null> 0 1 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 StringKey 12 string 10 <null> 0 10 0 <null> <null> <null> <null> 10 2 YES <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 IntNum 4 integer 22 <null> 0 10 1 <null> <null> <null> <null> 0 3 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 StringNum 12 string 10 <null> 0 10 1 <null> <null> <null> <null> 10 4 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 FloatNum 7 float 20 <null> 0 10 1 <null> <null> <null> <null> 126 5 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 LongNum -5 long 28 <null> 0 10 1 <null> <null> <null> <null> 0 6 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 DoubleNum 8 double 20 <null> 0 10 1 <null> <null> <null> <null> 28 7 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 ByteNum -6 byte 8 <null> 0 10 1 <null> <null> <null> <null> 0 8 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 DateValue 91 date 7 <null> 0 10 1 <null> <null> <null> <null> 7 9 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 TimeValue 92 time 7 <null> 0 10 1 <null> <null> <null> <null> 7 10 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 TimestampValue 93 timestamp 7 <null> 0 10 1 <null> <null> <null> <null> 7 11 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 BooleanValue -7 boolean 1 <null> 0 10 1 <null> <null> <null> <null> 1 12 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 CharValue 1 char 1 <null> 0 10 1 <null> <null> <null> <null> 1 13 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 ShortValue 5 short 8 <null> 0 10 1 <null> <null> <null> <null> 0 14 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 BigIntegerValue 2 biginteger 19 <null> 0 10 1 <null> <null> <null> <null> 28 15 NO <null> <null> <null> !
<null> NO
-QT_Ora9DS VQT Union.U8 BigDecimalValue 2 bigdecimal 20 <null> 0 10 1 <null>