この例では、user_name.v1テーブルのCREATE VIEWテキストをXML形式で返します。SHOW IN XML TABLEリクエストとは異なり、SHOW IN XML VIEWリクエストで生成されるXML文書では、ビューについて構文解析された問合わせは報告されず、ビューの列定義と、その定義で参照するデータベース オブジェクトのみを含みます。そのため、このXML文書は、ビューの再作成には使用できません。ただし、これは、元のビューと同じ列定義を持つテーブルの作成に使用できます。
v1テーブルは、次のように定義されています。
CREATE SET TABLE TESTDB.vt1, NO FALLBACK, NO BEFORE JOURNAL, NO AFTER JOURNAL, CHECKSUM = DEFAULT, DEFAULT MERGEBLOCKRATIO ( a1 INTEGER NOT NULL, b1 INTEGER, c1 CHARACTER(20) CHARACTER SET UNICODE NOT CASESPECIFIC, d1 DECIMAL(15,2));
v1の作成テキストは、次のようになります。
CREATE VIEW v1 AS SELECT a1, b1, c1 FROM vt1 WHERE d1 > 10000;
次のSHOW VIEW IN XMLリクエストを実行すると、データベースは、このリクエストに続く以下のレポートを返します。
SHOW VIEW v1 IN XML; <?xml version="1.0" encoding="utf-8"?> <TeradataDBObjectSet xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://schemas.teradata.com/TeradataDBObject TeradataDBObject.xsd" xmlns="http://schemas.teradata.com/TeradataDBObject" version="1.0"> <View name="v1" dbName="testdb"> <ColumnList> <Column name="a1" order="1"> <DataType><Integer/></DataType> <Constraint nullable="false"/> </Column> <Column name="b1" order="2"> <DataType><Integer/></DataType> </Column> <Column name="c1" order="3"> <DataType> <Char length="20" varying="false" uppercase="false" casespecific="false" charset="unicode"/> </DataType> </Column> </ColumnList> <RefList> <Ref name="vt1" dbName="testdb" type="table"/> </RefList> <SQLText> <![CDATA[ CREATE VIEW V1 AS SELECT A1, B1, C1 FROM VT1 WHERE D1 > 10000; </SQLText> </View> <Environment> <Server dbRelease="14.10.00.00" dbVersion="14.10.00.06" hostName="testhost"/> <User userId="0" userName="dbc"/> <Session charset="utf8" dateTime="2012-01-01T14:00:00-08:00"/> </Environment> </TeradataDBObjectSet>