例: Transaction-Time列の削除 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - テンポラル テーブル サポート

Product
Advanced SQL Engine
Teradata Database
Release Number
17.05
17.00
Published
2020年6月
Language
日本語
Last Update
2021-03-30
dita:mapPath
ja-JP/cjo1556732840654.ditamap
dita:ditavalPath
ja-JP/cjo1556732840654.ditaval
dita:id
B035-1182
Product Category
Software
Teradata Vantage

transaction-timeテーブルまたは二重テンポラル テーブルからどのようなタイプの列を削除する場合でも、そのテーブルに対するNONTEMPORAL権限が必要になります。また、ALTER TABLEにNONTEMPORAL修飾子を使用する必要があります。

次のtransaction-timeテーブルについて考えてみます。

   CREATE MULTISET TABLE Customer (
      Customer_Name VARCHAR(40),
      Customer_ID INTEGER,
      Customer_Address VARCHAR(80),
      Customer_Phone VARCHAR(12),
      Customer_Duration PERIOD(TIMESTAMP(6) WITH TIME ZONE) NOT NULL
         AS TRANSACTIONTIME
      )
   PRIMARY INDEX ( Customer_ID );

Customerテーブルに対するNONTEMPORAL権限を所有しているとすると、次のALTER TABLE文はCustomer_Duration列を削除します。

   NONTEMPORAL ALTER TABLE Customer DROP Customer_Duration;

transaction-timeテーブルまたは二重テンポラル テーブルからtransaction-time列を削除すると、すべてのクローズ行(transaction-time次元のすべての履歴行)がテーブルから物理的に削除されます。