非テンポラル挿入は従来型の挿入と同様に、transaction-time列をテーブル内の他の列と同じように扱います。非テンポラル挿入は、クローズ行またはオープン行の挿入に使用できます。
非テンポラル挿入を実行するには、ターゲット テーブルに対するNONTEMPORAL権限を所有している必要があります。
次のtransaction-timeテーブルについて考えてみます。
CREATE MULTISET TABLE Policy_Types ( Policy_Name VARCHAR(20), Policy_Type CHAR(2) NOT NULL PRIMARY KEY, Policy_Duration PERIOD(TIMESTAMP(6) WITH TIME ZONE) NOT NULL AS TRANSACTIONTIME ) PRIMARY INDEX (Policy_Name);
次の非テンポラルINSERT文は、transaction-time列の値を明示的に指定して、Policy_Typesに行を挿入します。
NONTEMPORAL INSERT INTO Policy_Types VALUES ('Premium Automobile', 'AP', PERIOD (TIMESTAMP '2004-01-01 00:00:00.000000', UNTIL_CLOSED)); NONTEMPORAL INSERT INTO Policy_Types (Policy_Name, Policy_Type, Policy_Duration) VALUES ('Basic Homeowner', 'HM', PERIOD (TIMESTAMP '2004-01-01 00:00:00.000000', UNTIL_CLOSED));