valid-timeテーブルからvalid-time列を削除するには、ALTER TABLE文を使用します。
次のvalid-timeテーブルについて考えてみます。
CREATE MULTISET TABLE Customer ( Customer_Name VARCHAR(40), Customer_ID INTEGER, Customer_Address VARCHAR(80), Customer_Phone VARCHAR(12), Customer_Validity PERIOD(DATE) NOT NULL AS VALIDTIME ) PRIMARY INDEX ( Customer_ID );
次の文はCustomer_Validity列を削除します。
ALTER TABLE Customer DROP Customer_Validity;
二重テンポラル テーブルからvalid-time列を削除するには、ALTER TABLE文を使用して、NONTEMPORAL修飾子を指定します。二重テンポラル テーブルからどのようなタイプの列を削除する場合でも、そのテーブルに対するNONTEMPORAL権限が必要になります。また、ALTER TABLEにNONTEMPORAL修飾子を使用する必要があります。
次の二重テンポラル テーブルについて考えてみます。
CREATE MULTISET TABLE Customer ( Customer_Name VARCHAR(40), Customer_ID INTEGER, Customer_Address VARCHAR(80), Customer_Phone VARCHAR(12), Customer_Validity PERIOD(DATE) NOT NULL AS VALIDTIME, Customer_Duration PERIOD(TIMESTAMP(6) WITH TIME ZONE) NOT NULL AS TRANSACTIONTIME ) PRIMARY INDEX ( Customer_ID );
次の文はCustomer_Validity列を削除します。
NONTEMPORAL ALTER TABLE Customer DROP Customer_Validity;
二重テンポラル テーブルからvalid-time列が削除されると、すべての非有効行(valid-time次元ではすべての履歴行)がテーブルから物理的に削除されます。