17.00 - 17.05 - QITS列 - Advanced SQL Engine - Teradata Database

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

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

どのキュー テーブルでも、最初に定義する列は、キュー挿入タイムスタンプ(Queue Insertion Time Stamp、QITS)列でなければなりません。各キュー テーブルには1つだけのQITS列があり、それは以下の属性を正確に指定して定義する必要があります。

QITS_column_name TIMESTAMP(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6)

QITS_column_nameは、QITS列に指定した名前です。

精度の指定はTIMESTAMPデータ型の指定およびそのDEFAULT属性でオプションですが、そのどちらについても、6以外の精度値を定義することはできません。

QITS列はシステム定義ではなくユーザー定義ですが、QITSを定義する際にユーザーが指定できる意味のあるオプションはその名前だけです。

QITS列に以下のいずれかを定義することはできません。
  • UNIQUE
  • PRIMARY KEY
  • 固有セカンダリ インデックス
  • 識別列

QITS列をテーブルのNUPIにすることは可能ですが、そのような処理は避けてください。テーブルに明示的なプライマリ インデックス、プライマリ キー、または固有性制約列を定義しない場合は、テーブルに定義されている最初の列がQITS列であるため、その列がデフォルトでプライマリ インデックスになります。

非キュー テーブルの場合と同様に、テーブルに対するブラウズ モード選択操作のパフォーマンスが最適になるように、基本インデックス列のセットを選択してください。

キュー テーブルでのメッセージ識別やキュー配列などの機能のために、追加のキュー管理列を定義することが役立つ場合もあります。