17.05 - table_kind - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQLデータ定義言語 構文規則および例

Product
Advanced SQL Engine
Teradata Database
Release Number
17.05
Release Date
2021年1月
Content Type
プログラミング リファレンス
Publication ID
B035-1144-175K-JPN
Language
日本語 (日本)

テーブルの種類によって重複行の制御が決まります。 参照整合性ルールについては、<Teradata Vantage™ - SQLデータ定義言語 - 詳細トピック、B035-1184>を参照してください。テーブルはグローバル一時テーブルまたは揮発テーブルとして作成することができます。 グローバル一時テーブルまたは揮発テーブルのいずれかを指定しない場合、テーブルは永続的なユーザー データ テーブルとして定義され、基本テーブルとも呼ばれます。 ハッシュおよび結合インデックス テーブルも基本テーブルとみなされます。

SETまたはMULTISETを明示的に指定しない場合、テーブルの種類の割り当ては次のようにセッション モードによって決まります。

セッション モード デフォルト
ANSI MULTISET
Teradata SET
セッション モード デフォルトは、次の場合を除いて有効です。
  • CREATE TABLE AS構文の副問合わせではない形式を使用してテーブル定義をコピーする場合。デフォルトのテーブルの種類は、現行のセッション モードとは関係なく、ソース テーブルのテーブルの種類になります。
  • 列パーティション テーブルを作成する場合。デフォルトのテーブルの種類は、セッション モードや、DBS制御パラメータPrimaryIndexDefaultの設定とは関係なく、常にMULTISETになります。
MULTISET
ANSI SQL:2011規格に準拠して、重複行が許可されます。テーブルの定義で、列または一連の列に固有性制約がある場合には、MULTISETを宣言しても、そのテーブルに重複行を含めることはできません。Vantageでは、NoPIテーブルおよび列パーティション テーブルを、デフォルトではMULTISETテーブルとして作成します。
一部のクライアント ユーティリティには、MULTISETテーブルについて制限があります。次の該当する資料を参照してください。
  • Teradata® FastLoadリファレンス、B035-2411
  • Teradata® Parallel Data Pumpリファレンス、B035-3021
SET
重複行は許可されません。次の種類のテーブルは、SETテーブルとして作成することはできません。
  • テンポラル
  • 列パーティション
  • NoPI
GLOBAL TEMPORARY
一時テーブルの定義が作成され、将来の実体化のためにデータ ディクショナリに格納されます。テーブルをWITH NO DATAでコピーする場合はグローバル一時テーブルを作成できますが、WITH DATAでテーブルをコピーする場合は作成できません。
列パーティション グローバル一時テーブルは作成できません。
行レベル セキュリティ制約列を持つグローバル一時テーブルを作成することはできません。
VOLATILE
揮発テーブルを作成します。その定義は、この構文要素が定義されたセッションの間だけメモリ内に保持される揮発テーブルです。領域の使用は、ログイン ユーザーのスプール領域に課されます。揮発テーブルは、それを作成したセッションに専用のものであるため、作成、アクセス、変更、および削除の各権限のチェックはシステムによって実行されません。単一のセッションで実体化できる揮発テーブルの数は1,000個までです。
揮発テーブルの内容および定義は、システムのリセットが実行されると削除されます。
特定の揮発テーブル定義を頻繁に使用する場合は、これらの揮発テーブルのCREATE TABLEテキストを含むマクロを作成することを検討してください。
列パーティション 揮発テーブルまたは正規化揮発テーブルは作成できません。
セカンダリ インデックス、ハッシュ インデックス、または結合インデックスを揮発テーブルに作成することはできません。
行レベル セキュリティ制約列を持つ揮発テーブルを作成することはできません。
揮発テーブルの詳細については、<Teradata Vantage™ - SQLデータ定義言語 - 詳細トピック、B035-1184>を参照してください。