UDT列の使用に関するテーブル制限 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQLデータ定義言語 詳細トピック

Product
Advanced SQL Engine
Teradata Database
Release Number
17.05
17.00
Published
2020年6月
ft:locale
ja-JP
ft:lastEdition
2021-03-30
dita:mapPath
ja-JP/jpx1556733107962.ditamap
dita:ditavalPath
ja-JP/jpx1556733107962.ditaval
dita:id
B035-1184
Product Category
Software
Teradata Vantage
テーブルにUDT列を使用する場合の一般的な制限は、以下のとおりです。
  • ARRAY列、VARRAY列、PERIOD列、または地理空間列を含むテーブルには、PERIOD列でも地理空間列でもない列が少なくとも1つ必要です。ARRAY列、VARRAY列、PERIOD列、および地理空間列はインデックスの構成要素にできないからです。
  • UDT列ではない列にPRIMARY KEY属性もUNIQUE属性も指定されていない場合、テーブルの最初の列をGeospatialデータ型、ARRAYデータ型、VARRAYデータ型、またはPERIODデータ型にすることはできません。

    ARRAY列、VARRAY列、Geospatial列、またはPERIOD列は、デフォルトでも指定した場合でも、テーブルのプライマリ インデックスにすることはできません。

  • UDTは、テーブルの列タイプとして使用する前に、順序付けおよび変換グループが定義されている必要があります。CREATE ORDERINGおよびREPLACE ORDERINGCREATE TRANSFORMおよびREPLACE TRANSFORMを参照してください。

    ARRAYデータ型、VARRAYデータ型、Geospatialデータ型、およびPERIODデータ型は、内部にUDTとして実装されているため、それらのデータ型に順序付けおよびデータ変換を定義する必要はありません。

    テーブル定義にUDT列、ARRAY列、VARRAY列、PERIOD列、または地理空間列を指定するための前提条件を参照してください。

  • テーブル ヘッダー領域は、テーブル定義に指定されたUDT列、ARRAY列、VARRAY列、Geospatial列、またはPERIOD列ごとに減少していきます。

    宣言済みの各UDT列はテーブル ヘッダー領域に約80バイトを使います。テーブルに宣言したその他のオプション(複数値圧縮とアルゴリズム圧縮、パーティション プライマリ インデックス、セカンダリ インデックスなどを含む)によっては、テーブル ヘッダーのサイズ制限が最終的に超過して、リクエスト元にエラー メッセージが返されることがあります。

    他の機能の指定がなければ、UDT列、ARRAY列、VARRAY列、地理空間列、およびPERIOD列の数は1つのテーブルにつき約1,600列までに制限されます。これは、システムがfatテーブル ヘッダーを許可することを前提としています。テーブル ヘッダーの詳細については、<Teradata Vantage™ - データベースの設計、B035-1094>を参照してください。