Spalten-Metadaten abrufen
Mit dem JDBC Metadata Explorer können Sie Spalten-Metadaten (Datentyp, Nullable, Autoincrement etc.) zu einer oder mehreren Tabellenspalten abrufen; hierbei können Sie die Suche nach Katalog, Schema, Tabelle und Spalte eingrenzen.
Input
Einem Input-XML-Dokument fügen Sie dazu innerhalb eines beliebigen Wurzel-Elements das Element <tablecolumns resulttag=" Ergebniselementname "/>
hinzu, in dessen Attribut resulttag
Sie einen gültigen XML-Namen angeben. Die Angabe von Katalog, Schema, Tabelle und Spalte in den Unterelementen <catalog>
, <schema>
, <table>
und <column>
sind hierbei optional; wenn diese Such-Einschränkungen fehlen, werden sämtliche verfügbaren Metadaten abgerufen.
<Root>
<tablemetadata resulttag="Ergebniselementname">
<catalog>Katalog</catalog>
<schema>DB-Schema</schema>
<table>DB-Tabelle</table>
<column>Spalte</column>
</tablemetadata>
</Root>
Output
Die XML-Struktur, die vom Adapter ausgegeben wird, besitzt innerhalb des Wurzel-Elements <Data>
ein Element, dessen Name in der Input-Struktur im Attribut resulttag
angegeben wurde und das die Spalten-Metadaten enthält. Wenn es mehrere Ergebnisse gibt (d. h. mehrere Spalten), so werden diese jeweils in einem separaten Element ausgegeben.
<Data>
<Ergebniselementname>
<Spalten-Eigenschaft>Wert</Spalten-Eigenschaft>
...
</Ergebniselementname>
</Data>
Erläuterungen (englischsprachig) zu den einzelnen Spalten-Eigenschaften finden Sie hier.
Beispiel 1
In einem Input-XML-Dokument wird folgende XML-Struktur definiert, um Metadaten zu einer Spalte X4_PID
in der Tabelle HISTORY
im Datenbankschema APP auszugeben:
<Root>
<tablecolumns resulttag="DBColumn">
<catalog></catalog>
<schema>APP</schema>
<table>HISTORY</table>
<column>X4_PID</column>
</tablecolumns>
</Root>
Der JDBC Metadata Explorer gibt daraufhin z. B. folgendes Ergebnis-XML-Dokument aus:
<Data>
<DBColumn>
<TABLE_CAT />
<TABLE_SCHEM>APP</TABLE_SCHEM>
<TABLE_NAME>HISTORY</TABLE_NAME>
<COLUMN_NAME>X4_PID</COLUMN_NAME>
<DATA_TYPE>12</DATA_TYPE>
<TYPE_NAME>VARCHAR</TYPE_NAME>
<COLUMN_SIZE>20</COLUMN_SIZE>
<BUFFER_LENGTH isNull="true" />
<DECIMAL_DIGITS isNull="true" />
<NUM_PREC_RADIX isNull="true" />
<NULLABLE>0</NULLABLE>
<REMARKS/>
<COLUMN_DEF isNull="true" />
<SQL_DATA_TYPE isNull="true" />
<SQL_DATETIME_SUB isNull="true" />
<CHAR_OCTET_LENGTH>40</CHAR_OCTET_LENGTH>
<ORDINAL_POSITION>1</ORDINAL_POSITION>
<IS_NULLABLE>NO</IS_NULLABLE>
<SCOPE_CATLOG isNull="true" />
<SCOPE_SCHEMA isNull="true" />
<SCOPE_TABLE isNull="true" />
<SOURCE_DATA_TYPE isNull="true" />
<IS_AUTOINCREMENT>NO</IS_AUTOINCREMENT>
</DBColumn>
</Data>
Beispiel 2
In einem Input-XML-Dokument wird folgende XML-Struktur definiert, um Metadaten zu einer Spalte X4_PID
in der Tabelle HISTORY
im Datenbankschema APP auszugeben. Das Element <column>
mit dem Attribut label
innerhalb von <resultsetRestriction>
schränkt dabei die ausgegebenen Daten ein:
<Root>
<tablecolumns resulttag="DBColumn">
<catalog></catalog>
<schema>APP</schema>
<table>HISTORY</table>
<column>X4_PID</column>
<resultsetRestriction>
<column label="TABLE_NAME" />
<column label="DATA_TYPE" />
<column label="NULLABLE" />
<column label="TYPE_NAME" />
</resultsetRestriction>
</tablecolumns>
</Root>
Der JDBC Metadata Explorer gibt daraufhin z. B. folgendes Ergebnis-XML-Dokument aus:
<Data>
<DBColumn>
<TABLE_NAME>HISTORY</TABLE_NAME>
<COLUMN_NAME>X4_PID</COLUMN_NAME>
<DATA_TYPE>12</DATA_TYPE>
<TYPE_NAME>VARCHAR</TYPE_NAME>
</DBColumn>
</Data>